Ottawa won despite being without third-leading scorer Alexei Kovalev, who missed his first game because of a lower-body injury, and leading goal-scorer Milan Michalek, who has a leg injury that has forced him to miss four games.
The Senators then lost second-leading scorer Mike Fisher when he received a five-minute boarding penalty and game misconduct with 4:28 to go in the first after he shoved Buffalo agitator Patrick Kaleta from behind and into the end boards.
Still, the undermanned Senators were able to improve to 25-6-4 against the Sabres since the lockout.
"We had some of our best players out, but a lot of guys stepped up," Spezza said. "That's what it's all about at this time of the year, because nobody is going to be healthy."
Peter Regin also scored to help the Senators win their third straight after a five-game losing streak.
The win pulled the Senators within five points of first-place Buffalo in the Northeast Division. The Sabres, though, have two games in hand.
"We've always played well against Buffalo," Alfredsson said. "They're all good games, but we're obviously able to get goals at the right time. We don't feel that because it's Buffalo we know we're going to win. It's always a hard-fought game, but we're ready for it. They kind of bring the best out of us."
Fisher's major penalty came with Ottawa up 1-0. Though the Sabres didn't get to utilize all five minutes of power-play time -- Tim Connolly received a slashing penalty a minute into the man advantage -- the Senators were able to neutralize Buffalo during the game-changing stretch.
"Our special-teams players didn't compete hard enough," Sabres coach Lindy Ruff said. "I was angry with the power play in general. That's where the lack of compete came in."
Tim Kennedy and Jason Pominville scored and Ryan Miller made 26 saves for Buffalo, which had its four-game winning streak snapped. The Sabres needed a win to clinch a playoff spot that would have snapped their two-season postseason drought.
"They're playing a certain kind of system against us and it goes against our group of forwards," Miller said. "We've got to suck it up and play a better game."
Down 3-1 after two periods, the Sabres cut the deficit when Pominville wristed a shot over Elliott's left shoulder from the left circle for his 22nd 1:34 into the third.
Thomas Vanek, then, nearly tied it with just over 10 minutes left in regulation, but his blistering slap shot rang off the post.
"Those are the types of breaks you need," said Elliott, who came in having recorded back-to-back shutouts against the Montreal Canadiens and Philadelphia Flyers. "You have to take those in stride, but I did tap the posts a couple of times after that."
Alfredsson iced it with an empty-net goal with a second to go.
Ottawa struck first when Kelly was able to slide the puck under Miller before the net was dislodged for his 15th of the season at 6:42 of the first. The goal was upheld after a brief video review.
The Senators stretched their lead to 2-0 5 1/2 minutes into the second period when Regin netted his 11th with a wicked wrist shot from the right faceoff dot that zipped by Miller.
The Sabres cut the lead to 2-1 5:16 later when Paul Gaustad's pass from beneath the goal line banked in off Kennedy's skate.
The goal snapped Elliott's shutout sequence at 174 minutes, 35 seconds.
Spezza made it 3-1 on the power play with his 20th when he deflected Alfredsson's one-timer from the top of the left circle with 5:57 to go in the second.
Buffalo left winger Raffi Torres missed his fourth straight game with a wrist injury. ... Current Sabres backup goalie Patrick Lalime holds the Senators franchise record for longest shutout sequence. He blanked his opponents for 184 minutes, 6 seconds in January 2003. ... Elliott improved to 8-0-0 lifetime against the Sabres. ... Sabres defenseman Tyler Myers had his five-game points streak snapped. ... Alfredsson extended his points streak to six games.