The Braves broke a scoreless tie by scoring five runs in the fourth, all with two outs.
Dan Uggla and Chipper Jones singled while Eric Hinske and Alex Gonzalez drew back-to-back walks from Casey Coleman (2-6) to make it 1-0. Heyward then golfed a 1-2 pitch to left-center field that landed in Wrigley Field's home run basket for a grand slam.
The Braves had to hang on, however, as the Cubs stormed back with four runs in the next inning, highlighted by a two-run double from Aramis Ramirez.
Mike Minor (4-2) earned the win, allowing four runs (three earned) over five innings as Atlanta logged its sixth straight triumph and extended its NL wild-card lead over San Francisco to 9 1/2 games when the Giants lost to San Diego Tuesday 7-5.
Craig Kimbrel turned in a scoreless ninth for his 40th save, tying a major league rookie record set by last year by Neftali Feliz of Texas.