Edmonton (13-27-9) has won three of its past four games and swept the two-game season series with Buffalo. The Oilers visit the Calgary Flames on Saturday.
"Thank goodness Anton Lander had the game that he did tonight. He was exceptional, by far the best player on the ice," Oilers coach Todd Nelson said. "I think he feels really comfortable and more confident when he looks behind and sees me. I've been working with him every year since he came over from Europe, so I think that helps.
"He's really improved his game. He has earned the opportunity. I thought he was outstanding tonight."
The loss extended Buffalo's losing streak to 13 games, the longest in Sabres history. All 13 losses have come in regulation.
Recalled from the Oklahoma City Barons of the American Hockey League on Jan. 1, Lander has become a regular in the Oilers lineup. He set up Edmonton's first two goals, then scored the eventual winner in the third period.
The goal, at 7:52, was Lander's first of the season. He and Oilers forward Teddy Purcell broke in on a 2-on-0 break following a poor line change by Buffalo. Purcell slid the puck over to Lander, who lifted a shot over Sabres goaltender Jhonas Enroth, who made 31 saves.
"It was fun to play and a big win for us," said Lander, who had two goals in 104 NHL games before Thursday. "I think we played all right, but we can still get better. I feel good out there. You don't have to play great all the time, but if you get a win, that's the most important thing. It's nice to get wins here the last couple of games. It's a good thing we have going on now; we have to keep it going."
"What can you do? The mental mistakes, the change that happened, the puck was going right to one of our forwards and he goes the opposite way," Sabres coach Ted Nolan said. "Instead of going into the puck, he goes away from the puck, and our defense gets caught in a change. I thought we had good possession of the puck and we didn't; those things are going to kill us all the time.
"We had our chances. With this team we need every one; we can't afford two or three guys not playing well or not giving what they have to give."
Mitchell beat three Oilers to the puck behind the Edmonton net, then spotted Myers unattended, coming in from the point.
"The defense were involved, but it wasn't a 60-minute effort from all of us," Mitchell said. "It's painful not being able to play a full 60 minutes. We play the first two periods well or we score the first goal, and getting off to good starts, and we just can't build on it right now."
Scrivens made 18 saves. All nine of his victories this season have come at Rexall Place.
Fraser tied the game 1-1 at 12:27, converting a pass from Lander and beating Enroth from in tight.
The goal was Fraser's sixth of the season and third since being claimed off waivers from the Boston Bruins on Dec. 29.
Klefbom put Edmonton up 2-1 with his first goal of the season at 15:02 of the first period, also on a feed from Lander, who beat Myers to the puck behind the Sabres net and spotted the Oilers defenseman in front.
"It's a lot of fun to win hockey games," Klefbom said. "This is the type of game we want to play. It was a solid game, and we put a lot of pucks on the net. We have to keep working on that. It is a good atmosphere in [the dressing room] right now."
Buffalo had a good chance to tie the game in the second period off a scramble in front, but Mitchell was unable to get his stick on a loose puck with Scrivens out of position.
"He's going to be out for a while," Nelson said of Nikitin.
Later in the third period, Myers left the game with an undisclosed injury, but he will likely play in Vancouver, Nolan said.
Ristolainen cut the Oilers lead to 3-2 with 2:02 left, getting to a rebound in front and shooting the puck past Scrivens.
A late holding penalty to Sabres defenseman Mike Weber, however, hampered Buffalo's attempt to complete the comeback.
"These mistakes that we continually make, we have to eliminate them," Sabres defenseman Josh Gorges said. "We have to find a way to play with confidence and not play scared to lose. It's frustrating when you get the start you want, and then we're just not consistently doing our jobs."
Edmonton is four points ahead of Buffalo at the bottom of the NHL standings.