Ryan Miller, coming off a 6-0 win over Atlanta, had 23 saves for Buffalo. It was his fourth straight decision over the Capitals.
Maxim Afinogenov and Derek Roy each added a goal and an assist, and Jason Pominville and Adam Mair also scored for the Sabres, who have won two straight after dropping their first two games of the season.
Mike Green and Michael Nylander each had a goal and an assist, and Alex Ovechkin also scored for Washington, which lost its second straight after opening the season 3-0.
Washington goalie Brent Johnson finished with 46 saves in a losing effort.
Down 1-0, Buffalo scored four times on seven shots in a 4:32 span late in the second period to take command, with Spacek beginning the rally on a power play at 14:51. It was his third goal of the season.
Afinogenov scored 11 seconds later, tapping in Thomas Vanek's pass down low.