The win was the Jets 7th straight.
The shutout was Comrie's first of the season.
Nino Niederreiter, Neal Pionk, Rasmus Kupari scored for the Jets.
Winnipeg who moved to a league leading 38-14-3 on the season.
Pyotr Kochetkov turned aside 27 shots for Carolina who dropped to 32-18-4.
Carolina appeared to have taken the lead when Jackson Blake took a drop pass from Seth Jarvis and beat Comrie high blocker side but the Jets challenged goaltender interference successfully after Mikko Rantanen made contact with the goaltender.
Nino Niederreiter gave the Jets the lead on the power play in the last minute of the first period.
With Sean Walker off for tripping, Nino Niederreiter snapped a puck past Kochetkov after Alex Iafallo found him wide open in the right side faceoff circle and slid him the disc at 19:18f.
Neal Pionk gave the Nets a two-goal lead 3:13 into the second period on the power play when he snapped up the puck after Dimitri Orlov blocked a Cole Perfetti shot and blew a slap shot past Kochetkov, beating him high glove side to make it 2-0 Winnipeg.
The goal was his 8th of the season.
Vladislav Namestnikov appeared to give Winnipeg a 3-0 lead with 6 minutes remaining in regulation but his goal was disallowed due to him kicking the puck into the net.
The disallowed goal was the first of two to go against Winnipeg as Rasmus Kupari appeared to score with 3:41 remaining in the third on second effort but his pending tally was also waved off.
The Jets challenged the ruling and the goal was allowed to stand to give Winnipeg a three-goal cushion.
The goal was his 5th of the season.
SHOTS-CAROLINA 29 WINNIPEG 30
ATTENDANCE-13,802