Marcus Johansson had a goal and an assist, Brad Marchand had two assists, and Tuukka Rask made 29 saves for the Bruins, who have won four games in a row.
Johansson scored to tie the game 2-2 on the rebound of a Marchand one-timer at 2:26 of the third with Jordan Staal in the penalty box for boarding Chris Wagner.
WATCH: [Hurricanes vs. Bruins Game 1 highlights | Complete series coverage]
Patrice Bergeron gave Boston a 3-2 lead at 2:54 after former Bruins defenseman Dougie Hamilton was called for roughing Joakim Nordstrom. He scored on a one-timer from the slot off a one-touch pass by Marchand.
"I think it's nice to get those goals," Bergeron said, "and you know, I think we took the momentum once we did, and after that it's kind of contagious and every line got going, and that's what you need."
Petr Mrazek, in his first game since he left Game 2 of the second round against the New York Islanders with a lower-body injury, made 23 saves for the Hurricanes, who had won six in a row.
"We're not going to win if we don't play better than that," Carolina coach Rod Brind'Amour said. "We had spurts, but that's not going to be good enough, I don't think, during the regular season. Certainly, it's not going to be good enough at this time of the year. So we'll regroup and try to get better for the next game."
Game 2 of the best-of-7 series is at Boston on Sunday.
Steven Kampfer, in the lineup because of defenseman Charlie McAvoy's one-game suspension for an illegal check to the head of Columbus Blue Jackets forward Josh Anderson in Game 6 of the second round, gave the Bruins a 1-0 lead at 2:55 of the first period. Johansson stole the puck at the Boston blue line and skated it into the Carolina zone before passing across to Kampfer, who scored with a wrist shot from the high slot.