St. Louis won for the sixth time in eight games, having turned things around under new coach Ken Hitchcock.
It was a 1-1 game heading into the second, but Cole put the Blues ahead to stay 7:39 into the period with the second goal of the defenseman's NHL career. His other goal came last year in his rookie season.
Oshie scored with 1:46 left in the middle period, but Anaheim battled back within one on a goal by Devante Smith-Pelly 3:17 into the third.
St. Louis protected its one-goal lead until Oshie scored again into an empty net with 46 seconds to play.
The win went to Jaroslav Halak, who made 20 saves.
Man spent 15 hours in jail for plugging electric car into an outlet at a school
Texas principal bans speaking Spanish, stirs controversy