Ian Holloway, in his first away game as Palace boss, saw his team fall behind after just six minutes to a Grant McCann strike.
An inspired display from Posh goalkeeper Robert Olejnik looked like it might be enough to see the hosts hang on to that lead but Palace eventually made a breakthrough and won it with two late goals from Andre Moritz and Kagisho Dikgacoi.
McCann put Posh ahead from close range following some impressive trickery down the left-hand side of the penalty area from George Boyd.
Palace immediately had two chances to equalise. Peter Ramage headed powerfully wide from Owen Garvan’s cross before Wilfried Zaha’s effort from the edge of the box was diverted over the crossbar by the fingertips of Olejnik.
Palace continued to push for an equaliser after the break but the hosts had Olejnik to thank for keeping them ahead.
The Austrian pushed an 18-yard effort from Glenn Murray over the bar at the start of the second half and then tipped Zaha’s 20-yarder round a post.
However, Olejnik’s resistance was finally broken 10 minutes from time by substitute Moritz.
The Brazilian, on as a 74th-minute replacement for Garvan, had plenty of work to do when he received the ball on the left-hand side of the penalty area but he cut inside and sent a left-foot shot beyond Olejnik and into the net off the far post.
And Palace completed the turnaround two minutes later with a superb breakaway goal.
Zaha led the charge, sprinting free down the right before laying the ball into the path of Dikgacoi who stroked it home from 12 yards out.