Dillon walked while batting for Mike Rivera with one out in the inning and the score tied, 1-1, after Corey Hart's RBI single created the tie earlier in the inning.
After Dillon drew the walk, Bill Hall hit an RBI single and Damian Miller added a sacrifice fly.
The winner was Scott Linebrink (5-6).
Francisco Cordero earned his 44th save.
Atlanta's run scored on a solo homer by Mark Teixeira in the bottom of the second. Four others had one hit for the Braves, who had a five-game winning streak snapped.
The losing pitcher was starter Tim Hudson (16-9).
Atlanta Manager Bobby Cox was ejected in the eighth.
Millions of Getty images now available for free via embed tool
Boston schools pull out free condoms over wrapping complaints