Andrew Rodgers replaced Marc Lawrence with 20 minutes remaining and combined with fellow substitute Jordon Brown to net the winner.
It was one of few opportunities created at Balmoor.
Rory McAllister could have doubled the hosts' advantage but his shot cleared the crossbar.
Peterhead remain 10 points behind Scottish League One leaders Dunfermline Athletic after claiming a narrow win over Airdrieonians.