Cameron Archer netted the game's only goal in the 80th minute, curling a left-foot shot into the top corner from 12 yards.
It was an untidy game played in windy conditions, North End eventually finding a way to put three valuable points on the board.
Archer scored for the second successive away game following his winner at Hull City the week before.
The win edged Ryan Lowe's side up to 11th place, with them four points off Middlesbrough who occupy the last play-off place.
Here are the PNE player ratings.
1. Daniel Iversen 7
Another clean sheet for the Danish goalkeeper who wasn’t overly stretched but made a good save with his legs from Joe Ward in the second half. Photo: Andrew Kearns/Camerasport
2. Sepp van den Berg 7
The Dutchman was his usual reliable self in testing conditions. While Posh had chances, many of them were from distance. Photo: Andrew Kearns/Camerasport
3. Patrick Bauer 7
He soldiered on despite going down twice with injury in the second half. Bauer won most of his battles and helped PNE to a fourth shut-out in a row. Photo: Andrew Kearns/Camerasport
4. Andrew Hughes 7
Hughes faced his former club and was steady on the left. Hit the bar early on with a cross after venturing forward on the overlap. Photo: Andrew Kearns/Camerasport