Despite their recent winning ways, the Hurricanes, who opened the 2014-15 season with eight consecutive losses (0-6-2), remain in last place in the Metropolitan Division.
The Maple Leafs (22-22-3) have lost five in a row and are 3-13-0 in their past 16 games.
"Don't get me wrong, they are frustrated, but so are we," said Carolina captain Eric Staal, who scored two goals. "We are lower than them in the standings. They were disappointed and bitter, as they should be, but so are we. Tonight, we have a healthy lineup, and guys are contributing and playing the roles they are supposed to be. It is a lot of fun."
Hurricanes goalie Anton Khudobin made 34 saves to improve to 5-8-2.
Carolina (16-25-5) has won two in a row heading into the break for the 2015 Honda NHL All-Star Game, which is Sunday in Columbus. The Hurricanes return to action next Tuesday when they host the Tampa Bay Lightning.
Toronto right wing Phil Kessel had a good opportunity to give the Maple Leafs the early lead when he found himself alone in front of the Hurricanes net, but he was unable to make contact with the bouncing puck.
Kessel, who entered the game 14th in NHL scoring with 19 goals and 43 points in 46 games, has been held without a point in eight of Toronto's past nine games.
Brad Malone made it 1-0 for Carolina with his third goal at 7:06 of the first period. Toronto goalie Jonathan Bernier made the save on the initial shot by Jay McClement, but the rebound bounced directly to Malone, who shot it into the empty net.
Elias Lindholm scored his ninth goal 41 seconds later to put the Hurricanes up 2-0. The play started with Toronto winning a faceoff in the Carolina zone, but the Maple Leafs were unable to get a shot off, and Lindholm took it the length of the ice and beat Bernier with a deke to his backhand.
The Hurricanes appeared to make it 3-0 at 9:16 of the first when Jordan Staal scored on a snap shot from the slot, but the goal was waved off because Carolina's Jiri Tlusty made incidental contact with Bernier.
The Hurricanes did add to their lead 48 seconds into the second period when Eric Staal scored his first of the game on a backhand from the high slot. Maple Leafs coach Peter Horachek replaced Bernier with James Reimer following the goal.
Nazem Kadri got Toronto on the board at 14:49 of the third period when he snapped a high shot from the faceoff circle past Khudobin for his 12th goal.
It was Kadri's first goal in nine games and the Maple Leafs' first from a forward in five games. The Hurricanes are among the NHL's best penalty-killing teams; they had killed off 36 consecutive power plays over 13-plus games prior to the Kadri goal.
"The guys that are on the penalty kill are really taking a lot of pride in that," Eric Staal said. "We don't use a lot of people on the penalty kill, and they are very aggressive. Those are the things that are key to team success; guys playing in certain roles and really embracing what is being asked of them. The guys on the PK have done that all year, and it was tough to see that one go in, but they will rebound and be just as good."
Staal scored his second goal of the game, 15th of the season, into an empty net with a slap shot from 20 feet out to complete the scoring.
Under Horachek, the Maple Leafs have placed a high priority on trying to cut down goals and shots against. In doing so though, the offense has dried up. In its past five games, Toronto has scored two goals and was shut out three times.
Not so long ago, Toronto was the highest scoring team in the NHL. Asked if the Maple Leafs would open things up a bit in an attempt to ignite some offense, Horachek said no.
"I don't think any of the top teams in the League play that way," he said. "If you want to start something and get a mindset in terms of playing a certain way, you have to play hard defense and attack the net at the other end. When you play defense, it doesn't mean you don't play offense. Nothing changes with the offense except you are competing hard in other areas."
Falling behind early in recent games has seemingly thrown the Maple Leafs into a funk.
"I get a sense that there is a big letdown," Horachek said. "I'm telling the guys to go right back out there and go right back to work. Don't let it turn into negativity. It is a 60-minute game, and you can't let one event, whether it's a bad goal or a bad call or an injury or a goal, affect you.
"We know that we haven't scored a lot in the past few games and we know we haven't won. We have to find ways to get some goals. We had chances, but chances are only a stat. The only thing that matters is wins and losses."
The Maple Leafs visit the Ottawa Senators on Wednesday in each team's final game before the break.