The Phillies led 5-4 in the sixth when Hernandez singled to right with two outs to score Maikel Franco from second and make it a two-run game.
Atlanta pulled within a run again in the seventh on Acuna’s two-out drive to center that gave him 95 RBIs.
The Braves threatened in the eighth, getting runners to second and third with two outs, but Hector Neris got Dansby Swanson to line out to left for the final out. Neris then pitched a 1-2-3 ninth, registering the final four outs for his 26th save in 32 chances.
Haseley gave Philadelphia the lead for good by driving an 89-mph, 3-1 fastball from Julio Teheran (10-9) over the wall in right-center to make it 3-2.
Albies put the Braves in front 2-0 in the first with a two-run shot, his 22nd, to left.
Hernandez led off the bottom of the first by going deep to right-center off Teheran, who allowed five runs on five hits in four innings.
Smyly allowed four runs on four hits with six strikeouts and a walk in four innings.
Braves: RF Nick Markakis, out since July 27 with a fractured left wrist, took batting practice for the second straight day. He’ll be reevaluated on Friday when a decision on whether to activate him will be made. . LHP A.J. Minter (left shoulder inflammation) was placed on the 60-day DL, ending his season. He has a 7.06 ERA in 36 appearances. . LF Johan Camargo (right shin contusion) was not in the lineup after fouling a ball of his shin in Wednesday’s game. . LHP Grant Dayton (fractured right toe) was activated from the 60-day IL.
Phillies: LF Corey Dickerson (left foot soreness) was not in the lineup. He was injured while grounding out in the sixth inning on Wednesday. X-rays were negative.
Braves: Open three-game set at Washington on Friday night with RHP Mike Soroka (11-4, 2.67) facing Nationals’ Max Scherzer (10-5, 2.56).
Phillies: After an off day on Friday, host Boston for two games beginning Saturday night when RHP Aaron Nola (12 -5, 3.70) opposing Red Sox LHP Eduardo Rodriguez (17-6, 3.73).