Beachy (4-1) overcame four walks to hold the Cardinals to one run, striking out six as the Braves logged their sixth win in eight games.
Dan Uggla and Tyler Pastornicky each contributed two hits and RBI in the win, which allowed second-place Atlanta to stay one-half game behind Washington atop the National League East.
Adam Wainwright (2-5) was roughed up for five runs on nine hits over 4 1/3 innings for NL Central-leading St. Louis.
Puzzle-maker slips 'Murdoch Is Evil' into Rupert Murdoch's Sunday Telegraph
N.J. man wakes up from 10-hour sleep with knife in back