Dwyer scored 15:34 into the period on assists from Joni Pitkanen and Jiri Tlusty to break a 2-2 tie.
Eric Staal added a goal and an assist for the Hurricanes, who with the win racked up their first three-game winning streak of the season. Ray Whitney and Brandon Sutter also scored for Carolina, while Pitkanen finished with three assists.
Cam Ward made 38 saves for Carolina.
The Maples Leafs got goals from Nikolai Kulemin and Lee Stempniak in their fourth straight loss -- their sixth in seven games. Jonas Gustavsson was 14-of-17 in goal for Toronto.