Palace missed an opportunity to go in front when Barry Bannan picked up a loose ball inside the box and smashed his shot straight into a Southampton player.
Southampton produced a good move midway through the half when Osvaldo found Adam Lallana, who laid it off for Lambert, but the England striker fired over from the edge of the box.
Marouane Chamakh thought that he had won a penalty having been supposedly brought down in the box, only for the referee to book the striker for a dive.
The Saints came out of the traps the quickest following the interval with striker Osvaldo putting them into the lead in the 47th minute with a neat finish.
Lambert then popped up with a fine free kick minutes later to put the Saints 2-0 up, with the striker curling the ball into the corner from 25 yards out.