The Sky Blues were second-best for long periods of the game, but new manager Mark Robins was left celebrating after sub McDonald struck in the 90th minute.
Coventry keeper Joe Murphy made a smart early save from Christian Montano's 20-yard drive, while Oldham had further half-chances from Jose Baxter and Matt Derbyshire.
Baxter also headed wide from Reece Wabara's cross before Coventry posed a rare threat after 44 minutes, David McGoldrick missing the target from close range.
Oldham went desperately close after 56 minutes as Baxter took possession 25 yards out and thumped his shot against the foot of the post.
But McDonald stole all three points with a close-range header at the near post from Reckford's left-wing cross.