Evgenii Dadonov scored twice, and Logan Thompson made 33 saves for Vegas (33-26-4).
"That was a [heck] of a gutsy win," Golden Knights coach Peter DeBoer said. "Lot of big efforts. … The kid (Thompson) played well in net."
Golden Knights forward Jack Eichel left the game late in the second period with an upper-body injury after blocking a shot with his hand.
"He didn't come back, so obviously that's not good," DeBoer said. "He'll get evaluated and we'll know more (Friday)."
Aaron Ekblad had three assists, and Spencer Knight made 28 saves for Florida (41-14-6), which had its seven-game point streak end (6-0-1).
"We were a little sloppy. It took about 30-35 minutes to get dragged into the fight," Panthers coach Andrew Brunette said. "They wanted it more. It was a little bit disappointing. You get your power play to tie the game, and then kind of a fluky goal against."
Sam Reinhart tied it 3-3 at 12:26 of the third period, deflecting Ekblad's one-timer from the point on the power play.
Nicolas Roy responded 57 seconds later to make it 4-3. After Sam Bennett fell down at the blue line, Roy collected the puck, skated in on a breakaway, and deked Knight before finishing with his backhand.
"There was a loose puck there," Roy said. "It was nice timing to get back on the board."