This completely ignores the fact that having one more person living at the time of the singularity helps just as much as having one more person frozen.
That's exactly correct. But if you take post-singularity life into account, survivors from our time are competing for resources with new lives. If you fix the date of the singularity and trust post-singularity resources to be allocated optimally, our decisions don't have moral consequence beyond the singularity; we can't take credit for the 28k years either way.
I've run in to the argument that cryonics beats VillageReach on a simple "shut up and multiply" level, by assuming an infinity vs finite tradeoff. Having read the Fun Theory sequences, it struck me that this wasn't a reasonable assumption, so I sat down, re-read a few relevant posts, shut up, and multiplied.
In Continuous Improvement, Eliezer ballparks a good fun-theory life as having a maximum length of around 28,000 years. In Robin Hanson's Cryonics Probability Breakdown, he assigns cryonics a conjoint probability of about 6%. 28,000 * 0.06 gives us a net return of 1,680 expected years.
Full body suspension from the Cryonics Institute currently costs $28,000.
VillageReach, according to GiveWell, can save an infant's life for less than $1,000.
For the price of Cryonics, we thus save 28 lives. 1680 expected years, divided by 28, puts the break-even point at an average lifespan of 60 years for those infants saved. A quick peak at Wikipedia suggests that the average African life is under 60 years for the majority of the continent, although there are some important nuances to really get a full picture.
Obviously, these are rough numbers, and I doubt many people base their decisions solely on "years lived". I do find it rather interesting that cryonics is currently about on par with one of the most effective charities in the world on that metric, however :)