Easiest way to read a large bank of LED's
If an IO expander seems OK to you, I don't see the problem. You can get them in various supply voltages, including 1.8 and 2.5 volts. So if you used 1.8 units for the red LEDs and 2.5 for the greens, I think you'd be in business. A TI TCA9534 would seem to do the trick, and you can get 64 bits on an I2C bus with them. So you'd actually need two sets of IO expanders, one for red and one for green. But it seems a lot better than the brute force approach.