B.J. Upton tripled and drove in two runs Sunday to lead streaking Atlanta to a 3-2 victory over the Phillies and their first four-game sweep in Philadelphia in 50 years.
Gerald Laird had two hits with a double and RBI for the Braves, who won for the sixth time in seven games while ending their road trip 8-3. Atlanta avenged a three-game sweep by Philadelphia June 16-18 at Turner Field.
''We had timely hitting and the pitching was really good,'' Braves manager Fredi Gonzalez said. ''You can't ask for more than that.''
It was the Braves' first four-game sweep in Philadelphia since Sept. 24-27, 1964, when the franchise was in Milwaukee and their four wins at Connie Mack Stadium contributed to the Phillies' infamous season-ending collapse that year.
Marlon Byrd hit a pair of solo home runs for the slumping Phillies, who have lost eight of 10 to drop to 10 games under .500.
''It didn't go our way,'' Phillies slugger Ryan Howard said. ''The ball didn't bounce our way. It just wasn't meant to be for us in this series.''
Chase Utley singled in the seventh inning for his 1,500th career hit. Braves first baseman Freddie Freeman greeted Utley with applause and a pat on the back, and the crowd of 33,215 gave the Phillies' second baseman a standing ovation.
There wasn't much else for the home fans to cheer.
Philadelphia dropped to 18-27 at Citizens Bank Park and fell to 7-35 when scoring three runs or less as the offense continued to struggle. The Phillies were 0 for 7 with runners in scoring position, finishing the series 3 for 32.
''Hitting in the clutch and hitting with men on base is a component we have to get better at,'' Phillies manager Ryne Sandberg said. ''We came up short in this series. It could've been a big point for us.''
Aaron Harang (7-6) got the victory despite allowing 11 hits in seven innings. He gave up two runs, struck out four and walked two.
''Harang battled through some tough innings, gave us a great effort,'' Gonzalez said. ''He's a wily vet.''
Craig Kimbrel pitched a scoreless ninth, but had to work out of a jam for his 24th save in 28 opportunities. Kimbrel got the first two batters out before consecutive singles by Ben Revere and Jimmy Rollins put runners on first and third for Utley. But Utley flew out to right to end the game.
''This was a heck of a series,'' Upton said. ''We really played well. Nobody really tried to do too much. It was a little out of character for us not hitting a lot of home runs, but it all came together for us. Now we just have to keep grinding.''
David Buchanan (4-4), making his eighth start in place of injured left-hander Cliff Lee, allowed three runs on five hits and five walks in five innings to snap his three-game winning streak.
The Braves went ahead 2-0 in the second on Upton's two-run triple off the wall in center. Harang scored on the play after singling to center with two outs. The pitcher had been 1 for 25 on the season before the hit.
After the first of Byrd's two solo homers brought Philadelphia within 2-1 in the bottom of the frame, Laird's RBI double plated Tommy La Stella to push Atlanta's advantage back to two runs.
It was the fourth extra-base hit in the last three games for La Stella, who had two doubles and a triple in Saturday's doubleheader.
In the bottom of the frame, Byrd homered into the Philadelphia bullpen to make it a one-run game again.
The Phillies threatened in the sixth when they put runners on first and second with nobody out. But Koyie Hill's sacrifice bunt attempt resulted in the lead runner being forced out at third, and pinch-hitter John Mayberry Jr. grounded into an inning-ending double play.
Philadelphia had runners on first and third with one out in the seventh when Howard grounded into another inning-ending double play.
Justin De Fratus pitched a scoreless sixth inning to extend his scoreless innings streak to 17. ... Braves catcher Evan Gattis didn't play for the third straight game after having back spasms striking out swinging in the first inning on Friday. Gattis will be reevaluated when the club returns to Atlanta on Monday. ... It was Byrd's seventh career multihomer game. ... The Phillies have Monday off before beginning a three-game series at Miami on Tuesday with RHP A.J. Burnett (5-7, 3.89) opposing Marlins RHP Henderson Alvarez (5-3, 2.32). ... The Braves host the Mets for three games beginning Monday when Atlanta LHP Alex Wood (6-6, 3.07) faces New York RHP Zack Wheeler (3-8, 4.45).