Anthony Stolarz made 27 saves, and Matthew Tkachuk had two assists for the Panthers (3-3-0), who played without captain Aleksander Barkov because of an illness.
Stolarz had not played an NHL game since February due to a season-ending injury with the Anaheim Ducks.
“It is obviously exciting,’’ Stolarz said. “We work hard in practice and to stay sharp so you are ready to go when your name is called. There were some jitters with the crowd, but I knew the guys would show up for me and they did.”
Fabian Zetterlund scored for the Sharks, who have lost their first six games of the season (0-5-1). Mackenzie Blackwood made 32 saves.
“It was disappointing that we gave up the goal we did,’’ San Jose coach David Quinn said of Florida’s first goal. “It was completely avoidable … we kind of faded away from the puck and it was just a big breakdown in the zone.”
After Blackwood made 15 saves in the first period, Zetterlund gave San Jose a 1-0 lead on a power play at 8:30 of the second, one-timing a feed from behind the net by William Eklund.
But the Panthers quickly tied it when Carter Verhaeghe made it 1-1 at 9:48, burying a centering feed from Tkachuk.
Kevin Stenlund scored an empty-net goal with two seconds left in the third period for the 3-1 final.
“We were much faster tonight in our offensive game, our attack and trying to drive pucks to the net,” Florida coach Paul Maurice said. “I am happy. That’s a good, NHL win. We are not critiquing the tape.”
NOTES: The Panthers have won nine in a row against the Sharks dating to Jan. 21, 2019. … Barkov remains two games from tying Florida’s record for games played (671), held by Jonathan Huberdeau. Maurice said he’s hopeful his No. 1 center can play Saturday against the Seattle Kraken. … Barkov was replaced in the lineup by forward Mackie Samoskevich, who was recalled from Charlotte of the American Hockey League. He had one shot on goal in 8:16 of ice time. … Sharks forward Anthony Duclair was honored with a video tribute during the first period. He played three seasons with Florida before being traded to San Jose on July 1.