Nate McLouth drove in two runs for Atlanta, which pulled into a tie for first place with Philadelphia atop the National League East.
Craig Kimbrel (3-0) was credited with the win for hurling a scoreless top of the 12th.
Second-place St. Louis, meanwhile, failed to make up any ground on Cincinnati in the National League Central standings. The Cardinals entered the contest six games back of the Reds.
The loss was absorbed by Mitchell Boggs (2-3), who surrendered Gonzalez's decisive blast.