With two outs in the 12th, Schneider took Cubs reliever Sergio Mitre deep over the right-field wall on a 1-0 pitch. It was his sixth home run of the season.
"Mitre has some movement on the ball," Schneider said. "You are looking for a good pitch to hit, and he left the ball up in the zone and I put a good swing on it."
Schneider is hitting over .360 since June 1 to raise his batting average to .271.
"He has been coming on. He has been getting good pitches to hit, and he is putting good swings on the pitches," manager Frank Robinson said of Schneider. "He has an idea what he wants to do up at home plate."
The winning pitcher was Joey Eischen, while Mitre took the loss.
D.C. starter Ryan Drese had another outstanding outing, pitching seven shutout innings. He gave up four hits and struck out one batter. But strikeouts are not Drese's game; he's a sinkerball pitcher, and he induced eight groundball outs.
"He did another outstanding job, and that's very encouraging before the All-Star break and after the All-Star break," Robinson said. "It's nice to know that we have a solid guy going there with the other three guys [Livan Hernandez, John Patterson and Esteban Loaiza]. Hopefully, we'll get Tony Armas going."
The Nationals gave Drese early run support against Cubs starter Carlos Zambrano. With two outs in the first inning, Junior Spivey scored all the way from first base on a double by Vinny Castilla.
In the fourth inning, Schneider made it a 2-0 game when he singled to left field to drive in Jose Guillen.
But, starting with Chad Cordero in the ninth inning, the Nationals relievers, a corps that has been virtually unhittable for most of the season, had a tough time getting the job done.
Entering the game, Cordero had converted a franchise record 26 consecutive saves, but the streak was ended when Aramis Ramirez hit a two-run homer over the left-center field wall. It was Cordero's first blown save since April 21 against the Braves.
As Ramirez was circling the bases, Cordero was spotted biting the front of his shirt for about 10 seconds. After the inning ended with the score tied at 2, Cordero was seen banging his glove on top of the dugout.
"It was frustrating. Ryan was battling the whole game. He pitched great. I felt bad for him," Cordero said. "After that, I was fine. It's all part of the game."
The team then rallied behind their "savior."
"Nobody was down. The cry was, 'Let's pick Chief [Cordero] up. He has been carrying us. We'll pick him up today,' " Robinson said.
It looked like the Nationals were going to win the game in the top of the 11th inning, when they rallied for two runs with Glendon Rusch on the mound.
With Carlos Baerga on first base and no outs, Schneider hit a perfect double-play ball to second baseman Todd Walker, but Walker threw the ball away to left field, leaving the Nationals with runners on second and third and no outs.
One out later, after Wil Cordero walked intentionally to load the bases, Brad Wilkerson doubled over the head of center fielder Jerry Hairston to score Baerga and Schneider.
But the Cubs made their second comeback of the game in the bottom of the inning against right-hander Hector Carrasco.
Hairston made it a one-run game when he hit his third home run of the season to lead off the inning.
Then with two out, both Jeromy Burnitz and Ramirez singled to put runners on first and third.
Eischen then came into the game and gave up a broken-bat double to Todd Hollandsworth. Burnitz scored on the play.
"The relievers are human beings. Also, you have to give the other team credit, too. Sometimes they put in a good swing, and they are going to have success against relievers, no matter what," Robinson said. "But the one thing about it is, we held together as a team. We won a tough ballgame on the road. It gives a little indication what this team is all about."