Coleraine boosted their hopes of qualifying for the Europa League with a comfortable win at the Showgrounds.
Stephen Lowry slotted in a 24th minute opener but Matthew Tipton levelled with a back-post finish.
Aaron Boyd fired home from a rebound to put the Bannsiders back in front and Curtis Allen headed in from Ryan McIlmoyle's just before the break.
Allen's deflected shot sealed the win, leaving Coleraine three points behind Portadown but with a game in hand.
The Ports have dropped to third and the battle is on now for the top-three finish which secures European action next season.
Sean Mackle wasted an early chance for the visitors before Allen crossed for Lowry to shoot past keeper Tudor Murphy.
Poor defending from a free-kick allowed Tipton in to net seven minutes later but Boyd quickly restored Coleraine's advantage.
Allen steered his header into the top corner to end a disappointing half for Portadown in which Gary Breen and Mackle were forced off with injuries.
Coleraine remained on top in the second half and Murphy made a good save from Paul Owens.
Allen notched up his 24th goal of the season when he finished off a fine counter-attacking move after 68 minutes.