Raul Ibanez hit an RBI double with two outs in the eighth inning for the only run, helping the two-time NL champions reduce their magic number for clinching their fourth straight division title to four. It was the Phillies' first home sweep over the Braves since 2001.
Oswalt allowed just one hit - a clean double by Martin Prado in the fourth - and one walk in seven scoreless innings.
Atlanta began the day with a one-game lead over San Diego in the wild-card race.
While the Braves used two rookies - Mike Minor and Brandon Beachy, who made his major league debut on Monday - to start the first two games of a crucial series, the Phillies adjusted their rotation so their three aces would pitch.
Cole Hamels and Roy Halladay delivered in the first two games. Then Oswalt did his job, though he didn't get the win.
Ryan Madson (6-2) pitched a perfect eighth for the win. Brad Lidge finished for his 26th save in 31 chances, earning a save in each game of this series. He retired Prado on a shallow fly to right to leave the tying run at second.
Jonny Venters (4-3) hit Chase Utley with a pitch to start Philadelphia's eighth. After Ryan Howard grounded into a double play, Jayson Werth walked.
Ibanez then hit an opposite-field drive that sliced into the left-field corner. Left fielder Nate McLouth overthrew the relay man and Werth slid home safely for a 1-0 lead. Philadelphia won with only four hits.
The Phillies are 44-15 since July 21, when they trailed the Braves by seven games. They are 18-3 in September.
A crowd of 45,310 was the 120th straight sellout at Citizens Bank Park. Fans waved their white-and-red "Fightin' Phils" rally towels, and chanted "Sweep! Sweep!" They had to leave their brooms in the parking lot because those aren't allowed in the stadium.
Braves starter Tommy Hanson tossed six scoreless innings, giving up two hits and three walks.
Hanson didn't allow a hit until one out in the fifth when Carlos Ruiz lined a double that McLouth slid past. Hanson struck out Shane Victorino looking at a fastball down the middle to end the inning and strand runners at second and third.
Oswalt is 7-1 with a 1.76 ERA in 11 starts since joining the Phillies. They're 10-1 in those games. He retired the first 11 batters before Prado lined a double in the fourth.
Since acquiring Oswalt from the Houston Astros on July 29, the Phillies are 37-15. Oswalt, Hamels and Halladay are 19-6 in 30 starts in that span. The Phillies are 23-7 in those games.
Notes: Utley has reached has safely in 22 straight games. ... Phillies SS Jimmy Rollins and OF Domonic Brown will face live pitching on Thursday. Rollins has been sidelined since Sept. 8 with tightness in his right hamstring. Brown was scratched on Sept. 6 and hasn't played since because of tenderness in his right quadriceps. ... It was Philadelphia's first home sweep over the Braves since Sept. 17-19, 2001. The Phillies went 9-0 in Atlanta in 2008. ... Atlanta's Jason Heyward has reached safely in 27 straight games.