Colton Sissons and Ryan Johansen also scored for the Predators (34-21-12), while Sissons added an assist and Colin Wilson had a pair of helpers. Pekka Rinne turned aside 21 shots in net. Nashville is 9-0-4 in its last 13 games.
The loss ended Winnipeg’s five-game homestand with only one victory (1-3-1). The team heads to Detroit to face the Red Wings on Thursday.
Stafford opened the scoring at 7:28 of the first, but Smith and Sissons answered back 11 seconds apart late in the period.
Stafford snapped a 12-game goal drought with his 17th of the season when he flipped in a rebound at the side of the net off a Dustin Byfuglien point shot.
Smith then recorded his 17th when he took a pass across the front of the crease from Viktor Arvidsson and beat Pavelec at 19:19.
Sissons, who was called up from Milwaukee of the AHL on Monday after an injury to Paul Gaustad, hadn't played since Dec. 26 and scored at 19:30. It was his second goal in his 20th game of the season.
Nashville defenceman Shea Weber picked up his 25th assist of the year on Sissons's goal. That extended the captain's point streak to four games, with two goals and four helpers since he missed three games with a lower-body injury.
Rinne helped his team keep the lead in a scoreless second with some big saves, while Pavelec did the same at the other end.
With 6:07 left in the second, Predators forward Austin Watson was tossed from the game for a head shot on Marko Dano along the boards. Dano laid on the ice for a few minutes, went to the dressing for a bit, but returned.
Winnipeg got a five-minute power play, but after a few wide shots and others blocked by Nashville's stingy defence, the Jets didn't get a shot on goal. The Preds had a 16-15 edge on shots heading into the third.
Johansen almost didn't score his 11th of the season. He whiffed on his first shot alone at the side of Winnipeg's net, but a quick second attempt went past Pavelec at 8:54 for the 3-1 lead.
Trouba made it 3-2 at 13:37, but Smith's second of the game at 15:21 sealed another victory.
Nashville continues its five-game road trip on Wednesday with the third game in Calgary.