I put up "Loosey Lippity Lessons" at SQ, but looking at my new version of the ages, they still don't make sense. If Percy is the "right" age for his year (by the August birthday), then Charlie would have to be ahead of his age somehow. Ah, JKR. We were doing fine and perfectly plausibly until that August birthday. Percy can't have been sick for a year, putting him back, because he's homeschooled anyway and it wouldn't make a difference (and anyway, that would mess with the distance from the twins). And we've never seen anyone accelerated at Hogwarts.
Sigh. A later birthday. October. That would have done it, as long as two years could mean two-and-a-half years.
As for Tonks's age, someone said earlier that she had to be something like five years older than Harry. I say there's no way she can be less than seven years older (I gave her an eighth year, for a cushion), because when she arrives at the Dursleys, she's waiting to see what Harry looks like. Anyone less than seven years older than he is would have seen him at his Sorting, playing Quidditch, and being awarded house points at the end of the year in PS/SS. And if she was there the next year, she'd have seen him paraded around as the possible Heir of Slytherin. Etc. So while it's feasible that Harry didn't see her (he's not very observant), it's not possible that she would arrive at the Dursleys not knowing what he looks like (except, presumably, through pictures). Harry doesn't exactly keep a low profile at Hogwarts.