Verlander (7-4) won his second straight start despite walking four batters, matching a season high. The Tigers ace also worked around five hits to allow only one run through six frames.
The right-hander was touched for two unearned runs on left-fielder Quintin Berry's error in the seventh. He struck out three batters to raise his MLB-best total to 106.
The Cardinals' Lance Lynn (10-3) absorbed the loss, yielding five runs on nine hits before exiting after five full frames.
Matt Holliday got the only RBI for St. Louis.
Members of Congress to keep receiving porn magazine
Rosie O'Donnell unveils nearly 50-pound weight loss