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.