The Jet winger cashed in on a rebound off a Kyle Connor shot, snapping the disk past Joel Hofer to give Winnipeg a one goal lead in the final frame.
Connor Hellebuyck made 14 saves for Winnipeg, who moved to 53-21-4, which is the most in their NHL history.
Pavel Buchnevich scored the lone goal for the Blues, who saw their 12 game winning streak snapped.
Joel Hofer turned aside 23 shots for St. Louis, who dropped to 43-29-7.
There was no scoring in the first period.
Morgan Barron opened the scoring 2:34 into the second period when he beat Mathieu Joseph to a loose puck deep in the Blues zone before dropping his shoulder and beat Hofer with a low wrister to make it 1-0 Jets.
The goal was his second of the season.
Pavel Buchnevich evened the score at 7:27 when Robert Thomas hit him in the slot from behind the net.
The Blues winger made no mistake, snapping a low shot past Hellebuyck to make it 1-1.
The goal was his 18th of the season.
Alex Iafallo gave Winnipeg the lead 7:05 into the third after he pounced on a rebound off a Kyle Connor shot and buried it to make it 2-1.
Adam Lowry hit the empty netter with 8.5 seconds left in regulation to seal the win.
SHOTS-ST. LOUIS 15 WINNIPEG 26
ATTENDANCE-15,225