Danny Shittu doubled the Lions' lead shortly before half time with a right-footed effort from outside the box, but Sam Vokes kept the visitors in contention with a header from close range less than a minute later.
Burnley were able to level less than 10 minutes into the second half, when Shane Lowry turned the ball into his own net while trying to save a shot from Michael Kightly.
The home side fought hard as they tried to regain the lead, as Nicky Bailey fired a long-range effort wide before McDonald had his headed effort saved by Tom Heaton.
Scott Arfield came close to giving the league leaders the lead for the first time in the 74th minute, but his powerful strike was well saved by David Forde, before Vokes headed just wide from the corner.
Millwall immediately went on the counter-attack, but efforts from Liam Feeney and Steve Morison both failed to find the target.