Matt Flynn struck a 19th-minute opener and Steve Swinglehurst soon headed home the visitors' second.
Josh Todd then netted twice, either side of half-time before Lee Currie pulled one back from the penalty spot in the 67th minute.
Peterhead manager Jim McInally endured a painful return to former club East Stirling, who ran out 2-0 winners at Ochilview.
Chris Townsley powered the home side into a 14th-minute lead and David Greenhill doubled their advantage in the 52nd minute as McInally's side who went down their first defeat since early November. Stirling Albion climbed into third place with an unconvincing 1-0 victory over bottom club Queen's Park at Airdrie.
Jordan White teed up Mark Ferry to score what proved to be the only goal of the game in the third minute.
Queen's Park were left aggrieved when what seemed a clear trip on David Anderson in the Stirling box went unpunished in the 72nd minute.
Clyde slipped to fourth after a 3-1 defeat at Elgin City. Craig Gunn's opener and a Shane Sutherland brace had Elgin on their way to victory before Scott Ferguson's 63rd-minute consolation.
Albion Rovers drew a crowd of 713, almost double their average gate, when they tested out a "pay what you can" initiative against Montrose at Cliftonhill.
Scott Chaplain's sixth-minute penalty conversion gave the hosts a 1-0 win.