The Saints twice led by healthy margins before holding off Power comebacks for a 12.9 (81) to 9.13 (67) win at rain-soaked Adelaide Oval.
St Kilda held a match-high 32 point break in the second term of Sunday night's fixture, and remained 31 points ahead midway through the third.
But the Power, propelled by Zak Butters (31 disposals, 10 inside 50s), rallied with the next three goals.
Port trailed by nine points at three-quarter time, and by eight early in the last quarter.
But a rare goal from recruit Jack Silvagni, from a 50m 'stand' penalty against Jason Horne-Francis, gave the Saints precious space before a long Mattias Phillipou bomb effectively sealed victory.
St Kilda's win lifts them to a two-three record, the same as Port.
"No outlandish statements here," Saints coach Ross Lyon said.
"It was round five; bank four (premiership) points - there are teams with 20 points that we're trying to catch."Â
Trump card Nasiah Wangeen-Milera was influential with two goals, 28 disposals, nine tackles and eight clearances.
Teammates Mitch Owens and Phillipou also kicked two majors while Hugo Garcia (26 disposals, 11 clearances one goal) and Jack Sinclair (23 disposals) provided grunt in the packs.
Port's Butters was outstanding, as was Horne-Francis (two goals, 26 touches), while spearhead Mitch Georgiades and Corey Durdin both kicked two goals.
The Saints dominated the opening term with four consecutive goals. When Phillipou converted, they led 27-0.
Wanganeen-Milera got busy early in the second term, kicking a goal and delivering inside 50m for another as St Kilda crafted a match-high 32-point break.
But Port responded with a three-goal quarter only for a late Owens strike to boost St Kilda's halftime advantage to 27 points.
A third-term flashpoint soon gave the Saints further scoring ammunition when Owens was given a dubious free kick for a ruck infringement.
Port's Brownlow medallist Wines reacted, as did Butters who was penalised 50m and reported for abusive language as Owens goaled from close range.
"I know what I said, and I didn't say anything bad," Butters told the Seven Network.
"I'd love to know the language that I said because I went up to him (field umpire Nick Foot) after the game and obviously wanted to have a chat, like two humans do, and he said he didn't want to speak to me.
"All I said (at the time of the incident) was: 'How is that a free kick?' And he gave a 50 and said I was on report ... I am curious to follow that one up because I am never going to say anything bad to the umpire."
Owens' goal put the Saints 31 points clear and, with heavy rain falling, seemingly safe.
Butters and Horne-Francis rallied their troops as Port scored four goals to two in the third quarter.
But Port could only come as close as eight points in the last term before the Saints kicked clear.