The Power banked a third consecutive victory with their 14.13 (97) to 13.10 (88) triumph at Adelaide Oval on Saturday.
Jason Horne-Francis dominated his former Roos teammates with 27 disposals, seven inside 50s and a goal.
But he also caused some grief for his own club, involved in animated discussion with coach Ken Hinkley, captain Connor Rozee and vice-captain Zak Butters at three-quarter time.
Horne-Francis had just tangled with North skipper Jy Simpkin late in the third term, giving up a goal in a behind-the-ball skirmish.
Port laid its victory platform with a slick 7.3 opening quarter, its highest scoring term of the year, then withstood a series of Roos bounce-backs.
North was just six points down late in the third term, and seven adrift seven minutes into the final quarter.
But the Power prevailed for a fourth win from seven games, with stalwart Darcy Byrne-Jones (three goals), Ollie Lord (two) and Mitch Georgiades (two) crucial.
Horne-Francis was ever-present and Butters (27 disposals, 13 tackles), half-back Rozee (27 and a goal) and forward Sam Powell-Pepper were all influential.
North's Paul Curtis was a standout with three goals from his 16 touches, and Harry Sheezel collected a match-high 30 disposals.
Veteran recruit Luke Parker (27 disposals, one goal) was again prominent, as was Luke Davies-Uniacke (25, one goal), but the Kangaroos paid a heavy price for their sluggish start.
Port led 7.3 to 2.4 at quarter-time before North turned the tide in an impressive second stanza, rewarded with five goals to two.
The Roos, sparked by Parker and the lively Curtis, were within 12 points when Nick Larkey took an eye-catching pack mark and ran into goal.
Port led 9.5 to 7.5 at half-time but lost defender Josh Sinn, who was substituted with concussion after being crunched in a tackle.
The Power went 24 points up in the third quarter, but the Kangas again rallied with three consecutive majors – the last from Davies-Uniacke.
A late strike from Port's Byrne-Jones gave the home side a 13-point buffer at three-quarter time, 12.8 to 10.7.
The Power skipped 19 points clear when Georgiades slotted his second early in the final term, but the Kangaroos again threatened.
The Roos scored two goals in two minutes to sneak within seven points, but couldn't get any closer.