It was the 16th road win of the season for the Blues, one behind Anaheim for the NHL lead.
Shattenkirk's game-winning goal came 3:09 into the third while Nash was serving a two-minute penalty for slashing.
Jaroslav Halak won a goaltending duel between Olympians. Halak, who will be on the roster of Slovakia at next month's Games, claimed the win with 34 saves.
Henrik Lundqvist, who will compete for Sweden at the Olympics, stopped 23 shots.