Sami Salo, Kevin Bieksa and Chris Higgins also scored, and Alexandre Burrows added a pair of assists for the Canucks, who have won four straight and seven of their last eight. Cory Schneider made 26 saves in the victory.
"A lot of credit goes to my teammates," Schneider said. "They took care of things instead of me having to make big saves."
Shawn Horcoff and Magnus Paajarvi scored for the Oilers, who have lost three straight and five of their last six. Nikolai Khabibulin gave up two goals on 17 shots before leaving the game in the first period with a groin injury. Devan Dubnyk was tagged for three goals on 14 shots in relief.
Vancouver struck first just 53 seconds into the game after Burrows chased down the loose disc in the left corner, dished it to Daniel Sedin, who found his brother wide open in front and Henrik Sedin tapped it in.
Skating with a 5-on-3 man advantage, the Canucks extended their lead to 2-0 at 6:34 of the first stanza when Henrik Sedin sent a perfect feed to Salo, who wristed it past Khabibulin from the slot.
Edmonton cut its deficit to 2-1 just 1:08 into the second period after Tom Gilbert threw a shot on net from the right point that wound up on the stick of Ryan Smyth in front. Smyth quickly sent it to Horcoff, who deposited it into an empty cage.
The Canucks though, restored their two-goal lead with 4:59 left in the second period when Bieksa ripped a slap shot from the point that got through Dubnyk courtesy of a perfect screen in front by Dale Weise.
Higgins then made it 4-1 when he got a perfect feed in the slot from Jannik Hansen and ripped a wrist shot over the shoulder of Dubnyk with 3:20 to play in the period.
Paajarvi pulled the Oilers within two with a one-timer off a 3-on-2 rush that squeezed through Schneider, but Sedin put the game away just 33 seconds into the final stanza when he jumped on a loose puck in the slot and fired a slap shot past Dubnyk.
"I thought we did a good job of fighting back," Horcoff said. "In the second period, we were right in the game. We were too aggressive in certain areas and we were too soft in our own zone for sure. We turned pucks over and gave them too many easy chances to score."
Vancouver improved to 25-0-0 when leading after two periods this season...Schneider has won 11 of his last 12 games...The Canucks have won six straight on the road...The Sedin twins have combined for 12 points in their last two games...Vancouver finished 1-for-5 with the man advantage, while the Oilers failed to convert on their only power play chance...Vancouver will visit the Nashville Predators on Tuesday, while the Oilers will play the Calgary Flames on Tuesday.