The Avalanche had to wait a few minutes to see if Svatos' late goal stood up. The referees reviewed the play to see if Svatos had kicked it in, but replays confirmed it went off his stick.
It's the first win of the season for Colorado, which dropped its first two games in overtime. It was the Canucks' first loss after two road wins.
Vancouver pulled goalie Roberto Luongo with 1:39 left - and with the Canucks on a power play - but couldn't score.
The Avalanche thought they had the go-ahead goal by Ian Laperriere with 9.2 seconds left in the second, but the refs ruled the whistle had blown for a penalty before the goal. Laperriere, who thought he'd scored his 100th career goal, had already begun celebrating. The Avalanche failed to score on the power play after the hooking penalty on Jan Bulis.
Joe Sakic had a pair of assists and now has 87 points against Vancouver, the most of any active player.
The bad blood that had existed between Vancouver and Colorado has subsided with the Canucks' trade of Todd Bertuzzi to the Florida Panthers last June. Bertuzzi was booed every time he came to Colorado after he fractured former Avalanche forward Steve Moore's neck with a hard open-ice body check in 2004.
Luongo, who was acquired from Florida for Bertuzzi, is 0-5 against Colorado with four of the losses coming while he was with Florida.
Markus Naslund took advantage of Colorado not clearing the puck when he tapped in a shot late in the second to tie the game 2-2. Naslund's second goal of the season came after Jose Theodore turned back a flurry of shots.
It didn't take long for Colorado to capitalize on a hooking penalty by Rory Fitzpatrick in the second period. Just 12 seconds into the penalty, Svatos scored on his second poke at the puck in front of the net. Svatos' goal at 2:48 was his first of the year and gave Colorado a 2-1 lead.
The Canucks' Daniel Sedin opened the scoring with his third goal of the season after a shot by Lukas Krajicek caromed to him off the pads of Theodore at 5:57 of the first period.
Colorado tied it at 12:42 of the period on Wojtek Wolski's power-play goal following a tripping penalty on Josh Green. Paul Stastny tried to cram it in from behind the net but Luongo turned it away. Stastny gathered up the puck and centred it to Wolski, who shot over a sprawled out Luongo for his second goal of the season.
Notes: Brett Clark had two assists for the Avalanche. ... Milan Hejduk has 25 career goals against Vancouver, but hit the post on a 2-on-1 break midway through the third. ... Naslund recorded his second assist of the season in the first period.