Boro had trailed when Chung-Yong Lee gave Bolton the lead against the run of play with a cute dinked finish, but McDonald, who came on in the first half after an injury to Marvin Emnes, scored his first two goals of the season to maintain their momentum.
Boro, unbeaten in five, remain in third place in the league and look a good bet to mount a serious promotion challenge over the next few weeks.
In contrast new Bolton boss Dougie Freedman has it all to do.
Freedman, who will be officially unveiled on Monday afternoon, was almost out of his seat in the opening two minutes when Chris Eagles unleashed an effort from distance, but it went just wide of the post.
Boro soon found their feet though and Grant Leadbitter tested Adam Bogdan from distance before Ishmael Miller wasted a fine chance when he headed George Friend’s probing cross wide in the 10th minute.
The hosts were asking all the questions and Bogdan had to be at his best to deny Emnes’ powerful effort.
Boro’s flow was not interrupted by the injury to Emnes which saw McDonald come on and Miller had another effort go just off target as his curling effort flew wide with Bogdan beaten.
But Boro paid the ultimate price for their failure to score as the visitors stole a 43rd-minute lead.
A loose ball fell to Chung-Yong and after composing himself inside the area he delightfully lifted the ball over Jason Steele to stun the Riverside.
And it could have been even better for Wanderers two minutes later as Chung-Yong was presented with a golden chance to double the lead, but trying to repeat his earlier finish he blazed over the bar.
It was an unjust half-time scoreline and Boro came out after the interval trying to put it right, though they struggled to create the same vibrancy.
However, they finally built up a head of steam and levelled midway through the second period. Miller had the ball on the left and fired in a cross-shot that Bogdan could only parry and McDonald was on hand to stab home from close range.
Boro were flying and McDonald headed another opportunity wide before they had a strong appeal for handball turned down when the ball appeared to strike Sam Ricketts on the arm.
The deserved winner finally came in the 85th minute when McDonald was left unmarked and headed home Emmanuel Ledesma’s cross from the left and Boro held on for the three points.