Tavares' second goal broke a 3-3 tie 38 seconds into the third period. The Islanders center found the net on the second rebound after Carolina goalie Justin Peters had stopped shots by P.A. Parenteau and Matt Moulson earlier in the sequence.
Frans Nielsen and Kyle Okposo also tallied and Parenteau finished with three assists for New York.
Kevin Poulin earned the victory by stopping 33-of-36 shots.
Cam Ward started in net for the Hurricanes and yielded three tallies on 21 shots before being pulled from the game with a lower-body injury after two periods.
Peters relieved and stopped 9-of-10 shots.
Interpol investigating stolen passports on missing flight
Teacher apologizes for showing sexual image of herself in class