Brock Boeser had two goals, and Alexander Edler scored for the Canucks (11-14-3), who are 1-8-2 in their past 11 games. Bo Horvat had two assists, and Jacob Markstrom made 27 saves.
"If we play like that we're going to be all right," Canucks coach Travis Green said.
Boeser, playing his second game after missing 11 with a groin injury, made it 1-0 at 9:46 of the first period after a pretty play from Elias Pettersson. The Canucks rookie was knocked down in the slot after intercepting a pass inside the blue line, but swept a pass from his knees back to Boeser in the slot for a one-timer past a sprawling Fleury.
"It's tremendous," Boeser said. "He told me on the bench that he heard me yelling, he didn't know where I was. It's a great play."
Vegas tied it 1-1 at 14:00 when a rebound bounced in off Carrier's skate.
Pacioretty made it 2-1 on a one-timer on the power play at 3:05 of the second period, and extended the lead to 3-1 on a one-timer off the rush 1:13 into the third period. It was the third two-goal game in the past five for Pacioretty, who has 11 points (eight goals, three assists) in a seven-game point streak after four points (two goals, two assists) in his first 16 games.
"You don't want to skate yourself out of position," Pacioretty said of using a one-timer on each goal. "At the beginning of the year you tend to do so, and if I am trying to move too much then I skate out of position."
Pacioretty also credited linemates Alex Tuch and Cody Eakin, who made a pretty passing play to set up his second goal, for the recent success.
"It's a feel thing and a chemistry thing and it's there right now but we have to keep going with it," Pacioretty said. "They are both fun to play with."
Edler cut the lead to 3-2 on a rebound at 2:50, and Boeser tied it 3-3 on a backdoor pass from Sam Gagner at 8:48 before the Canucks gave up the winning goal.
"Those are momentum shifters," Boeser said.