The rookie defenseman and Ottawa native, playing in just his third NHL game, corralled the puck at the right point and launched a wrist shot that found the far upper corner of the net for the game-winner.
Bobby Ryan erased a 2-1 deficit with a third-period goal and Jean-Gabriel Pageau also scored for the Senators.
Robin Lehner got the win with 30 saves.
Chris Stewart scored twice for St. Louis, which had its three-game winning streak broken.
Ex-Senator Brian Elliott made 29 saves.