The Oilers outshot the Devils 11-8 in the third.
"I don't think much changed in the third," McDavid said. "I feel like we had lots of loose pucks around the net, lots of little plays that could have gone in and, all of a sudden, in the third they just started going in. It's a funny game that way. You stay with it long enough, you get rewarded, and I thought we did that."
Dawson Mercer had a goal and an assist, Michael McLeod had two assists, and Vitek Vanecek made 28 saves on 32 shots in relief for the Devils (16-13-2), who have lost three straight. Akira Schmid allowed two goals on six shots before being pulled at 5:24 of the first period.
Vanecek had made 21 consecutive saves after entering the game but allowed four goals on 11 shots in the third.
"We got our [butts] beat,” New Jersey coach Lindy Ruff said. “We didn't win enough battles, we didn't beat enough people to the net and then when we had opportunities to shoot, we didn't want to shoot. You look at three of their goals ... the puck is going to be ours so we're heading on the offense, and we turn it over. It's commitment to being in shot lanes ... free shots from the point where we're not blocking shots."
Ryan McLeod gave the Oilers a 1-0 lead on a snap shot at the right post 24 seconds into the first. Nugent-Hopkins made it 2-0 on a rebound at the left post at 5:24.
Mercer scored from the right circle to pull the Devils within 2-1 at 13:14 of the first.
"The message (to the team) is buckle up, we have to get out of it together," Devils captain Nico Hischier said. "We're all frustrated. But that's when teams get together and you’ve just got to dig deeper."