Vancouver had been struggling beyond regulation time, losing three of their last four games - two in shootouts, another in overtime. Naslund put Vancouver ahead 4-2 at 18:03 when he sidestepped defenceman Marc-Andre Bergeron and backhanded the puck between the legs of goalie Dwayne Roloson for his 16th goal of the season.
Chouinard scored what proved to be the winner when he scooped up a puck at the Vancouver blue-line and led a two-man break at 7:27.
Mattias Ohlund and Henrik Sedin also scored for the Canucks (29-19-4), who moved atop the Northwest Division standings and improved to 10-10-1 within its conference.
Marty Reasoner, Toby Peterson and Joffrey Lupul scored for Edmonton (25-23-4), which lost for the first time in three games overall but suffered its fourth defeat in six games to Vancouver.
Canucks goalie Roberto Luongo kept his club in front after Reasoner scored at 12:03 of the second to cut Edmonton's deficit to 2-1. Luongo made a nice blocker save on Ales Hemsky, then foiled Fernando Pisani from the side of the net.
Chouinard, with his first goal in 17 games, restored a two-goal cushion when he scooped up a puck at the Vancouver blue-line and lead a two-man break. The fourth-line centre made a nice deke on Roloson, then flipped a backhand shot into the net.
Petersen made it a 3-2 game at 17:16 before Naslund's goal restored Vancouver's two-goal advantage. Lupul made it interesting at 19:21 but Bulis finally cemented the win for the Canucks with an empty-net goal at 19:42.
Luongo finished with 29 saves in registering his 29th win of the season while Roloson turned aside 28 shots.
NOTES: Defenceman Willie Mitchell returned to the Vancouver lineup after missing six games with a groin injury. To make room, Yannick Tremblay was sent back to the AHL's Manitoba Moose, along with centre Tommi Santala who is coming off a knee injury . . . This marked the first of three games that Vancouver will play against Alberta-based teams. The Canucks will visit Calgary on Saturday before a rematch in Edmonton with the Oilers.