Linfield's title hopes were dealt a blow as Sean Mackle scored a winner two minutes from time to secure a comeback victory for Portadown at Windsor Park.
Blues player-manager Warren Feeney headed in from Michael Carvill's right-wing cross on 12 minutes, then Aaron Burns missed a 60th-minute penalty.
Jimmy Callacher headed a Chris Casement free-kick into his own net after 69 minutes for the visitors' equaliser.
Mackle ran on to a through ball and scored with a cool right-foot finish.
Linfield remain three points behind league leaders Crusaders, with the Crues having a match in hand, while third-placed Portadown move to within four points of Feeney's side.
Feeney's first goal for the club got the hosts off to a good start and soon after Andy Waterworth's header from another Carvill cross cannoned off the bar.
The Ports had first-half chances too but Peter McMahon fired just wide of the far post, while Casement curled a free-kick wide of the target.
David Miskelly saved from Burns's fiercely struck spot-kick on the hour after a Jamie Mulgrew cross had been handled inside the area by Tim Mouncey.
Burns then struck a right-foot shot wide, before Callacher diverted past his own goalkeeper with a diving header, Ross Glendinning seemingly getting a hand to the ball before it hit the net.
Shea Conaty headed against the woodwork, before Mackle's composed finish sealed the win for the Ports in the closing stages.