Newly-appointed Trotters manager Dougie Freedman was in the stands at the Riverside Stadium and watched his side take a 1-0 lead into the break.
However, substitute McDonald netted twice as the hosts came from behind to record their fourth consecutive league win.
The ball broke kindly to the South Korean in the box and he smartly dinked Jason Steele to end his 18-month wait for a Trotters goal.
Emnes was forced off with injury and replaced by McDonald, who levelled the scores by stabbing in from close range on 67 minutes.
Both sides had penalty appeals turned down, with Lee complaining that he was shoved in the box before a handball shout against Sam Ricketts was rebuffed at the other end.
Substitute McDonald headed Boro a deserved winner with four minutes remaining when he converted Emmanuel Ledesma's cross at the back post.
The result puts the Teesiders level on points with Leicester City in second place, while Bolton remain mid-table ahead of Freedman's first match in charge against league-leaders Cardiff City next weekend.