ATLANTA -- Brandon Beachy keeps making progress in his return from elbow ligament replacement surgery. And now that he's reintroducing the slider to his repertoire, his confidence is growing.
"I'm starting to work on sequences and throwing pitches -- breaking balls -- for strikes, stuff like that," Beachy said. "Hopefully keep moving in that direction."
The Braves, who have won two straight and 17 of 19, lead the majors with a .612 winning percentage.
Philadelphia, which has lost seven of eight series since All-Star break, has dropped 19 of 23. The Phillies have lost 13 of 14 on the road.
Rain delayed the start of the game 1 hour, 48 minutes.
Beachy (2-0) held the Phillies scoreless until Dominic Brown's 27th homer cut the lead to 5-2 with one out in the sixth.
John Lannan (3-6) lasted only 1 1/3 innings -- the shortest outing in a career spanning 148 starts -- before leaving with a left knee injury.
Beachy, making his fourth start since returning from surgery, allowed five hits, two runs and no walks. The right-hander struck out four, beating Philadelphia for the first time in nine career starts.
Beachy has been waiting to bring back his slider, which is traditionally the last pitch to return to form after Tommy John surgery. He missed 105 games before returning July 29.
"It's something that I'm still going to have to work at to get the feel for it and really be confident with it," Beachy said. "Whether it's effective or not, if I keep it down, it's something they're going to have to think about."
Craig Kimbrel converted his 28th consecutive save opportunity and 38th in 41 chances, striking out John Mayberry Jr., retiring Carlos Ruiz on a flyout and pinch-hitter Kevin Frandsen on a groundout.
Kimbrel entered the game with none out in the ninth after David Carpenter allowed a leadoff homer to Darin Ruf and walked Cody Asche.
The Braves went up 2-0 in the first on Heyward's leadoff homer and Johnson's sacrifice fly.
Lannan escaped further damage with runners on first and third when B.J. Upton took a called third strike, but his troubles continued in the second with a one-out walk to Beachy.
Heyward doubled on a liner off third baseman Asche that advanced Beachy to third, and after Justin Upton walked on five pitches, Lannan's night was over.
Atlanta took a 5-0 lead after the next Philadelphia pitcher, Zack Miner, gave up Freddie Freeman's sacrifice fly and Johnson's two-run single. Johnson leads the NL and ranks second in the majors with a .337 batting average.
"I'm just trying to take the same approach every time up there," Johnson said. "Hopefully I can stay as consistent as possible that way."
Lannan gave up four hits and five runs with three walks and one strikeout. Coming off a 9-2 loss last Friday at Washington in which he allowed a career high-tying eight earned runs, he is 1-5 with a 10.50 ERA in his last six road starts.
"Every time I push off there's a pain in the knee," said Lannan, who will visit an orthopedist on Thursday. "I'm trying to get through that and everything else is tightening up. I want to get this thing fixed. That's what it comes down to."
Philadelphia, which stranded runners in scoring position three times in the first four innings, has been outscored 85-30 over its last 15 road games.
Beachy, who left for a pinch hitter in the sixth, improved to 1-3 and lowered his ERA to 3.67 in nine career starts against Philadelphia.
Luis Ayala and Luis Avilan combined to allow one hit with one strikeout in the seventh and eighth for Atlanta before Ruf's seventh homer made it 6-3.
Heyward's 11th homer gave him 12 RBI since moving to the leadoff spot on July 27 -- a span of 18 games in which he's hit .382 and scored 20 runs.
Heyward was nearly charged with his first error of the season when he ran in from right field, knocked over 2B Tyler Pastornicky and dropped Jimmy Rollins' pop fly in the third. An official scoring change announced in the sixth gave Rollins a double. ... Pastornicky left before the top of the fourth with a sprained left knee. The Braves announced that he will be re-evaluated on Thursday. ... Brown has three homers in his last eight games. ... SS Andrelton Simmons, whom manager Fredi Gonzalez wanted to give the night off, took his place on the field and went 1 for 2 with one run scored. Paul Janish moved to second. ... Janish was hitless in his last 27 at-bats, dating back to Aug. 31, 2012, at home against Philadelphia, before his third-inning single. ... Three of Philadelphia's eight hits were infield singles. ... Braves CF B.J. Upton went 0 for 4, lowering his batting average to .188, with one strikeout and three stranded runners. ... RF Justin Upton tied a career-high with three walks.