The Blues were trailing 2-1 midway through the third period when Chris Stewart tipped in a wrist shot from the point by Kevin Shattenkirk for the equalizer.
After a scoreless overtime, Oshie scored in the first round of the tiebreaker, using a series of head fakes before putting a forehand shot past Montreal's Carey Price.
Jaroslav Halak made saves on Alex Galchenyuk and Brendan Gallagher before Max Pacioretty missed on the Canadiens' final try, giving the Blues their fourth win in five contests.
Alexander Steen notched his 13th goal of the season and Halak recorded 25 saves for St. Louis.
Michael Bournival and Renee Bourque each scored for the Habs, who dropped a third straight.
Price stopped 30 shots.