Two thoughts;
(1) Had your eTA expired.? You might need to renew it. It doesn't last for ever. I think three years is the max.
(2) An eTA is connected to a passport, not to a green card, so presenting a green card to the reader wil never work. Did you try scanning your passport instead?
1) No, it’s valid and it’s for 5 years.
2) I scanned my passport (the very one linked to the eTA) on the kiosk, which it always has to ask for, and it still asked me to scan a visa after. But the green card is still important to convey visa-free status since my passport on its own isn’t visa-free for Canada. So I believe it asked me to scan a visa because I scanned a passport that normally requires a visa to Canada.
I don’t believe the eTA is an issue because the kiosks/online check-in only asked whether I have an eTA or a visa, but didn’t ask for further details when I chose eTA. And, with United at least, the agents at the gate asked anyone who wasn’t a US citizen or Canadian citizen/permanent resident to show proof of their eTA. I showed them the eTA confirmation email in my phone.