Fiers (9-7) held the Cardinals to one run on five hits, worked around three walks and struck out five for Milwaukee, which clinched its three-game series.
His run-scoring single in the second inning followed an RBI by Carlos Gomez and staked the Brewers to a 2-0 lead, which they never surrendered.
Milwaukee's bullpen combined to limit St. Louis to two runs over four innings and John Axford picked up his 27th save.
Jake Westbrook (13-11) absorbed the loss, surrendering three runs on seven hits over five complete innings for St. Louis, which saw its lead over the Los Angeles Dodgers for a National League wild card spot shrink to one-half game.
Skip Schumaker, David Descalso and Adron Chambers drove in runs for the Cardinals.