PHILADELPHIA (AP) -- It's been a while since the Washington Nationals blared loud music in their clubhouse.
For one night, they cranked it up -- a little.
Austin Kearns hit a tiebreaking RBI single in the eighth inning and the Nationals snapped a 12-game losing streak with a 4-3 victory over the Philadelphia Phillies on Thursday night.
The Phillies blew an eighth-inning lead for the third time in nine days, and fell 2 1/2 games behind the NL East-leading New York Mets.
The mood in Philadelphia's locker room was sullen. Only one starting player came out to speak with reporters within 35 minutes of the end of the game.
Across the way, the Nationals got to enjoy a rare victory. It's been a long year for the team with the worst record (45-83) in the majors.
"It was a tremendous game to snap our losing streak and it went right down to the wire," Nats manager Manny Acta said.
Jesus Flores' RBI single up the middle tied it at 3. Second baseman Chase Utley made a diving stop to temporarily save a run, but Kearns lined a single to center to give the Nationals a 4-3 lead and their first victory since a doubleheader sweep of Colorado on Aug. 7.
Saul Rivera (4-5) allowed two runs in one inning, but earned the win. Joel Hanrahan pitched out of trouble in the eighth and ninth to record his fourth save. He retired pinch-hitter Chris Coste on a slow grounder to shortstop with a runner on third to end it.
"It's a big weight off our shoulders," Hanrahan said. "We knew people were writing about it everywhere. Now we want to win a couple more."
The Phillies wasted another strong outing from 45-year-old Jamie Moyer. The left-hander gave up two runs -- one earned -- and five hits in 6 2/3 innings. Moyer has allowed three runs or less in 14 consecutive starts, but has only five wins in that span. Chris Short was the last Phillies pitcher to do that in at least 13 consecutive starts. Short's streak reached 23 in 1967.
"I just try to take care of things I can control," Moyer said of the poor run support.
Nationals starter Tim Redding allowed one run and three hits in six innings. He came in having allowed 20 runs in his last 20 innings.
Reigning NL MVP Jimmy Rollins continued to hear some boos from fans who are upset that he called them "frontrunners" in a television interview last week. Rollins hasn't given them any reason to be forgiving. He's 3-for-33 since making the comments during a trip to Los Angeles.
The Phillies, who led the NL in runs the past two seasons, have scored three runs or fewer in 40.9 percent of their games. They are 10-42 in those games.
"I'm very concerned about our hitting," manager Charlie Manuel said. "Every guy in that room knows we can hit better."
Ruiz, a light-hitting catcher, gave Philadelphia a 3-2 lead when he drove a 1-0 pitch from Rivera over the wall in left-center for his third homer of the season and first since June 7 at Atlanta.
Pinch-hitter Greg Dobbs' RBI groundout tied it at 2 one batter before Ruiz went deep. Shane Victorino reached on an infield single and advanced to third on third baseman Zimmerman's throwing error. He scored on Dobbs' bouncer to second.
Anderson Hernandez's RBI infield single in the seventh put the Nationals ahead 2-1.
The Nationals scored an unearned run to break a scoreless tie in the sixth. Hernandez and Cristian Guzman lined consecutive singles to start the inning.
After Zimmerman struck out, Milledge hit a grounder to third that should have been a double play. Guzman slid hard into second, altering Utley's throw that sailed away from first baseman Ryan Howard for an error. Hernandez scored after the ball hit off Howard's glove.
Utley made up for it in the bottom of the inning with a two-out RBI single that tied it at 1.
Howard is in a 3-for-35 slump with 18 strikeouts. He is on pace for 213 strikeouts, which would break the season record of 199 he set last year. ... The Phillies drew 41,568 fans, snapping their sellout streak at 16 games. ... The Nationals had lost seven in a row to Philadelphia.