HDMI cable lost colors
tl; dr: Don't waste your time or risk damaging your gear. Get a new cable.
As to why it's behaving that way, one or more of the TMDS pairs isn't making good contact. If your output is Y/Cb/Cr (color difference) then maybe only Y is getting through, resulting in a monochrome display. Or, the monitor expects both Cb and Cr, and punts to monochrome if one of those is missing. Or some other reason, depending on the format selected.
Pin 18 is +5V from the source device. It's shorter so that it mates last. This power is used to run the monitor's Display Data Channel (DDC) hardware (an I2C EEPROM or its equivalent), so that the monitor's configuration can be read out without powering on the entire unit. The host uses the DDC info and negotiates a compatible color and resolution setting and starts sending data in that format.
DDC is also used in copy protection. When HDCP-enabled content is being displayed, DDC is active all the time, updating keying material in the monitor periodically. If this handshake fails, the source is obliged to either blank the display, or down-res the content to 480i. Heinous, I know.
So you're partially right in that pin 18 plays a role in color selection: +5V is part of DDC, as well as the I2C pair SCL and SDA. Which seems to be working.
Again, not worth your time or risk. Monoprice or Blue Jeans Cables are your friends. The cables are cheap, even for HDMI 2.1 compliant ones.