Lambert's treble took his season's goal tally to 30 and moved the Saints to within 14 points of the top six in League One.
Adam Lallana almost handed Alan Pardew's men the perfect start but his angled 10-yard strike was acrobatically headed off the line by Luke Chadwick, after keeper Willy Gueret had flapped at Jason Puncheon's cross.
The Dons seized control and Aaron Wilbraham headed Peter Leven's free-kick straight at Kelvin Davis before Dean Lewington somehow volleyed James Tunnicliffe's knock-back wide from six yards.
But Lambert made the hosts pay for their misses when he put the Saints ahead just three minutes after the break.
Davis launched a long free-kick into the box that Dons defender David McCracken could only head up into the air, and Lambert nipped in ahead of Gueret to head the ball into an empty net.
Jermaine Easter had a close-range overhead kick brilliantly saved by Davis and Mark Randall blasted a half-volley just wide as the Dons pressed for an equaliser.
But Lambert's powerful 69th-minute penalty doubled Southampton's lead after Jose Fonte had been tripped in the box by Mathias Doumbe.
Lambert sealed the win in fine style by lobbing Gueret from 35 yards with 14 minutes remaining.