After again pulling Markstrom, the Flames had a chance to tie it with 54 seconds remaining, but Matthew Tkachuk's shot attempt hit the crossbar.
"They get up 3-1, the building's loud, it's easy for guys to just sit back and not want to make plays and be afraid to go out there," Flames defenseman Chris Tanev said. "Guys are still pushing, guys are still trying to score goals, which is a big step for us."
Max Pacioretty gave the Golden Knights a 1-0 lead at 17:06 of the first period, finishing a 2-on-1 with Chandler Stephenson with a one-timer from the top of the right circle.
Pacioretty has seven points (four goals, three assists) during a five-game point streak since returning from a broken foot Nov. 24.
"Our attention to detail was really good," Vegas coach Peter DeBoer said. "I loved our start, which we know has been an issue here at different times in the first 20 games. How we defended ... I think through 40 minutes we had hardly given up anything in the house or around the net."
Roy made it 2-0 at 1:49 of the third period, shooting glove side from the slot after taking a pass from defenseman Shea Theodore.
With Karlsson's return, Roy moved down and was center on the third line between Dadonov and Mattias Janmark. He had been playing with Jonathan Marchessault and Reilly Smith on the second line while Karlsson was injured.
"I think it helped me a little bit," Roy said. Those two guys (Smith and Marchessault) have helped me create some plays and help me feel good about my offensive game."
Lindholm cut it to 2-1 at 9:19 when Andersson's shot, which was going well wide of the net, redirected in off his body.
"When we made it 2-1, they made it 3-1 right away," Tkachuk said. "But I think the difference was we just weren't as sharp for the whole 60 minutes, and they took it to us pretty good, especially the first two periods."
NOTES:The Golden Knights are 7-0-0 at home against the Flames. They are the first team to win their first seven home games against an opposing team since the Minnesota Wild did so against the Washington Capitals from 2000-01 to 2013-14. ... Vegas forward Mark Stone had an assist to extend his point streak to five games (one goal, five assists).