Cristian Guzman scored the go-ahead run on a throwing error by Cincinnati second baseman Brandon Phillips in the eighth inning, a mistake that could have been forced by Alberto Gonzalez's hard slide.
"You play hard -- good things happen," manager Manny Acta said.
The win was the third in 16 games for the Nationals, who left 12 runners on base before the eighth.
With the bases loaded and one out, Ryan Zimmerman bounced a slow grounder to shortstop Alex Gonzalez, who flipped to Phillips. As Anderson Hernandez crossed the plate with the tying run, Phillips threw wildly to first, allowing Guzman to score.
"Game on the line, you are going to try and make a play. That's what I tried to do," Phillips said. "[Gonzalez] hit me and I tried to make a play."
The Reds won the first two games of the series, waiting out two excruciating rain delays and watching pitchers wriggle out of jam after jam.
Manager Dusty Baker felt Phillips shouldn't have tried to throw the ball because he thought Zimmerman would beat the relay.
"It's a situation where you are trying. Probably shouldn't have, but Brandon is the best around," Baker said. "They kept the pressure on us. Even though we had the lead, the pressure was more on us than it was on them."
Julian Tavarez (2-4) pitched two scoreless innings in relief of John Lannan and Joe Biemel got his first save of the year, pitching a scoreless ninth. It was Washington's first save since May 24.
Daniel Herrera (0-2), the Reds' fourth pitcher of the game, took the loss. Starter Micah Owings hasn't won in his past six starts and wasn't able to last six innings.
"It's gotten so bad that everyone's trying to get the big hit -- the big home run," Adam Dunn said.
Dunn, who leads the team with 17 home runs and 44 RBI, keeps waiting for the Nationals (16-42) to break out. They have just one three-game winning streak.
"We haven't had that big blowout game the entire year," Dunn said. "Hopefully, something clicks and everyone relaxes."
The Reds scored a run in the second when Zimmerman's wild throw from third base on Adam Rosales' infield single hit the tarp past first base.
They added their second run in the fourth against Lannan when Gonzalez's RBI single scored Jonny Gomes.
Washington made it 2-1 in the sixth when Guzman's infield out scored Josh Willingham.
Dunn started at 1B for Washington in place of Nick Johnson. Johnson had a pinch-hit single in the sixth inning. ... Acta said Dunn will be his DH for the upcoming series at Tampa Bay. ... Ramon Hernandez started at C for the Reds. With 1B Joey Votto injured, Hernandez had started 10 of the previous 11 games at first. ... Washington drafted RHP Shane McCatty, son of pitching coach Steve McCatty, in the 34th round.