The Hurricanes, who have yet to lose in the Stanley Cup Playoffs (7-0), lead 3-0 in the best-of-7 series. Game 4 will be here on Saturday (6 p.m. ET; HBO MAX, truTV, TNT, SN, TVAS, CBC).
Jalen Chatfield and Nikolaj Ehlers also scored for Carolina, which is the No. 1 seed from the Metropolitan Division and Eastern Conference. Shayne Gostisbehere and Jordan Martinook each had two assists, and Frederik Andersen made 18 saves.
Trevor Zegras scored for Philadelphia, which is the No. 3 seed from the Metropolitan Division. Dan Vladar made 26 saves.
Staal gave the Hurricanes a 1-0 lead with a power-play goal at 17:27 of the first period. Svechnikov's shot from the right circle hit Travis Sanheim and went wide of the net, but the puck caromed off the end boards back out front, where Staal knocked it under Vladar's glove.
Zegras tied the game 1-1 at 2:31 of the second period. Porter Martone's shot from high in the zone hit off Flyers defenseman Emil Andrae in front and deflected to Zegras, who was able to chip a shot over Andersen's glove with his forehand from the bottom of the right circle.
Chatfield put the Hurricanes back ahead 2-1 with a short-handed goal at 15:59. The Flyers won an offensive-zone face-off to start a power play, but Martinook dove to knock the puck away from Flyers defenseman Jamie Drysdale at the left point. Staal then jumped on the loose puck and started an odd-man rush before sending a backhand feed across to Chatfield, who roofed a shot under the crossbar.
Svechnikov made it 3-1 at 3:52 of the third period, one-timing a cross-ice pass from Sebastian Aho in the right circle during a 4-on-3 power play.
Ehlers scored on a breakaway to extend the lead to 4-1 at 7:08.