Your approach is correct, as long as the fare is not basic economy (B) then it should be upgradeable.
However, I would make doubly sure that you are searching ExpertFlyer correctly. It is very odd whenever someone finds lots of C space many months in advance, 9 times out of 10 it's user error. You must search using the "Awards & Upgrades" function and you must search segment by segment to see the true availability.
Last edited by JJeffrey; Sep 4, 2022 at 11:19 am