The Aston Villa loanee's 80th goal was a rare moment of quality in a scrappy game played on a bobbly pitch and with wind whistling the ground.
If anything, hosts Peterborough looked the side more likely to score but then PNE dug their winner out of nothing.
Alan Browne led a counter attack up the pitch and fed a pass through to Archer who curled a great finish into the far top corner.
It was the second away game running Archer had been the match winner and this was his third goal in a Preston shirt since joining on loan in late January.
The performance for long spells ranked as poorly as North End have played under Ryan Lowe.
However, they stayed in the game, survived a couple of scares - Joe Ward hit the bar shortly before the goal - before Archer came up with the goods.
Lowe had made two changes to the starting XI, one enforced and one voluntary.
Injury ruled out Greg Cunningham with Josh Earl taking his place at left wing-back, while Emil Riis was preferred up front to Ched Evans.
It was a scrappy first half, a poor pitch and blustery wind making good football difficult.
Nevertheless, North End struggled to get any pattern to their play and if anything the home side looked the livelier side going forward.
That said, Andrew Hughes came close to giving them the lead in the sixth minute in slightly fortunate circumstances.
Hughes went on the overlap to meet Earl's pass and lifted a cross into the middle which drifted goalwards and bounced against the top of the bar.
Kwame Poku had a couple of half chances for the hosts before one of PNE's better moves of the first half provided them with a sight of goal in the 25th minute.
Brad Potts took the ball up the right-wing and his cross into the box was met by Cameron Archer and laid into the path of Johnson, the midfielder's shot blocked by a defender.
After Patrick Bauer was booked for a foul on Jonson Clarke-Harris, the Posh striker hit the resulting free-kick into the wall.
When the ball was recycled and put back into the middle, Clarke-Harris poked a shot straight at Daniel Iversen from close range.
Joe Ward swept a shot against the PNE bar after meeting Clarke-Harris' cross from the left, however the flag went up for offside.
Six minutes before half-time, Earl lost possession on the left and the ball was crossed to Reece Brown on the edge of the box, his low shot whistling wide of the target.
An early second-half chance saw Archer meet a pass on the left side of the box and drag a low shot across goal and well wide.
PNE survived two close calls in their box in quick succession.
In the 56th minute, Ward was played in to the right of goal, his low shot clipping Iversen's leg and going behind.
Less than sixty seconds later, a ball in from the right found the run of Poku at the near post but somehow he lifted it high over the bar.
North End laboured as the half went on, Lowe introducing Evans, Scott Sinclair and Ryan Ledson from the bench at varying intervals.
Iversen dived to parry a shot from Clarke-Harris, then in the 79th minute Ward's free-kick from a good 30 yards hit the bar and flew over.
It was soon after that let-off that North End went up the other end and scored.
Browne intercepted a Posh pass in midfield and drove forward up the middle on the counter-attack.
The skipper's pass found the run of Archer in the box who took a touch before curling a delightful left-foot finish over the keeper into the far top corner.
They saw out the remainder of the game quite comfortably, including more than six minutes of stoppage-time.
Peterborough: Benda, Kent, Knight, Thompson, Ward, Fuchs (Marriott 81), Norburn, Coulson (Mumba 60), Poku (Jones 85), Clarke-Harris, Brown. Subs (not used): Cornell, Szmodics, Grant, Morton.
PNE: Iversen, Van den Berg, Bauer, Hughes, Potts, Whiteman (Ledson 77), Johnson, Browne, Earl, (Sinclair 69) Archer, Riis (Evans 61). Subs (not used): Ripley, Lindsay, Rafferty, McCann,.
Referee: Tim Robinson (West Sussex)