Alex Ovechkin scored, Evgeny Kuznetsov had two assists, and Ilya Samsonov made 28 saves for the Capitals (21-9-9), who are 1-3-2 in their past six games.
Ovechkin tied Leon Draisaitl of the Edmonton Oilers for the NHL lead in goals (26) and points (54).
"I think in the first half of the game we didn't go to the front of the net, especially when we moved the puck to our blue line, we just stayed on the perimeter and every shot, he sees it," Ovechkin said. "In this League, it is hard to score from the blue line if there's no traffic in front. We are going to watch the video, make some adjustments and move on."
Tom Wilson pulled Washington within 3-2 when he scored a power-play goal on a one-timer from the right circle at 6:22 of the third period, but Miller shot into an empty net at 19:02 for the 4-2 final.
Ovechkin made it 1-0 when he scored on a one-timer from the left circle during a power play at 10:31 of the first period.
"The first power play [unit], I thought, generated a lot of chances," Capitals coach Peter Laviolette said. "There's a lot of movement, a lot of chances that came from the first power play, and right at the end we got one."
The Canucks tied it 1-1 when Pettersson's wrist shot from the right circle deflected in off the post 33 seconds into the second period.
Pettersson then got his own rebound below the goal line and scored with a backhand off Samsonov to give the Canucks a 2-1 lead at 4:48.
"Maybe we're almost too aggressive up top," Capitals forward Carl Hagelin said. "We didn't really have the sticks in the lanes where we need to have them."