Jeff Skinner, Casey Mittelstadt and Jake McCabe scored for the Sabres (23-14-6), who defeated New Jersey in Buffalo for the first time since April 1, 2014. Carter Hutton made 20 saves.
The Sabres had 14 players get a point in the second period.
WATCH: [All Devils vs. Sabres highlights]
"After [Skinner] scored, we just kept rolling, then I scored, then we got a couple of other big goals, and I was excited for [Pilut], too, to get his first one," Smith said.
Blake Coleman scored, and Keith Kinkaid made 28 saves for the Devils (16-19-7), who lost their second straight game. New Jersey 5-15-3 on the road this season.
"We've got to figure this out," Devils captain Andy Greene said. "It's been way too long. It's on us in here to stick together and play for each other and play hard for each other. That's the best thing we can do and go from there."
New Jersey took a 1-0 lead at 1:28 of the first period when Miles Wood's shot from the left wall hit Coleman's skate in front.
"It's one of those things. We come back here in the room and we know we played well," Hutton said. "We obviously weren't up on the scoreboard, but we knew if we'd stick to it, things would go our way."
Skinner scored his 29th of the season from the left face-off dot far side to tie it 1-1 at 1:39 of the second period. Smith, a forward playing his sixth NHL game, made it 2-1 at 4:14; his shot trickled through Kinkaid's pads inside the left post.