Sheets (4-1) had his longest outing since joining Atlanta's rotation on July 15 after missing all of last season due to Tommy John surgery on his right elbow. He allowed one run on seven hits while walking one and striking out none.
Freddie Freeman drove in two runs, Brian McCann went 2-for-3 with an RBI and Dan Uggla had a pair of hits for the Braves, who have won 11 of 13 overall.
John Mayberry Jr. homered for the Phillies, who have lost seven straight to Atlanta.
Sheets, who had surgery in August 2010, has pitched well in his six starts this season, lowering his ERA to 1.13 with Monday's effort. He retired eight straight batters at one point, and kept Phillies batters off balance all evening.
Eric O'Flaherty and Cristhian Martinez relieved Sheets and combined to pitch 1 2-3 scoreless innings.
The Braves took a 3-0 lead in the third, highlighted by Freeman's two-run double that bounced just over the first-base bag. Martin Prado scored the second run on Freeman's hit, just beating Brian Schneider's tag. Phillies manager Charlie Manuel came out to argue the play, but replays appeared to show home-plate umpire Eric Cooper made the correct call.
Freeman, who went to third on the throw to the plate, reached on a wild pitch by Vance Worley.
Worley (6-7) had his shortest outing of the season, lasting just 3 2-3 innings and giving up four runs on six hits with three walks and two strikeouts.
Atlanta tacked on a run in the fourth when Paul Janish scored on Michael Bourn's RBI single to left. Philadelphia got that run back, drawing within 4-1 on Mayberry Jr.'s leadoff homer to left in the bottom half.
Atlanta went up 5-1 in the seventh when Heyward scored from first on a single. Brian McCann lined to right and the ball glanced off the tip of charging Nate Schierholtz's glove. Schierholtz thought he caught the ball and was slow to react, allowing Heyward to race all the way around to home plate.
Heyward made it a five-run game with his 18th homer, a solo shot to right in the ninth.
The Phillies' crowd of 41,665 halted the club's consecutive sellout streak at 257 games, which is the third-longest in MLB history according to the club. The streak started on July 7, 2009.
Philadelphia was 154-103 during those games with Citizens Bank Park averaging 45,082 fans per game for a total draw of 11,585,952.
Atlanta won its second straight Monday game after losing the first 12 Monday games of the season. As they did last Monday when they broke the losing streak, the Braves wore their socks high as a team.
NOTES: The Phillies activated left-hander Raul Valdes from the DL and optioned infielder Hector Luna to Triple-A Lehigh Valley. Valdes had been out since July 9 with a right hip strain. He pitched 1 1-3 scoreless innings Monday, striking out three. . Jimmy Rollins snapped an 0-for-16 skid with an eighth-inning single. . Philadelphia left-hander Cole Hamels (11-6, 3.34 ERA) is scheduled to face Atlanta lefty Mike Minor (6-7, 5.01) in the second of the three-game set at 7:05 Tuesday.