Matt Carpenter's solo pinch-hit homer - a major league record 15th by a St. Louis pinch-hitter this season - tied the game and sent a jolt through the Cardinals.
A home run each from Randal Grichuk and Jhonny Peralta followed, and St. Louis rallied for a stunning 9-7 win over the Pittsburgh Pirates on Tuesday night.
St. Louis blew an early five-run lead and the Pirates were a pitch away from ending a seven-game losing streak when Watson's 0-2 fastball turned into Carpenter's 18th home run. An All-Star two years ago as a setup man who moved into the closer role when Mark Melancon was traded to Washington at the deadline, Watson gave up as many homers in the ninth as he did during the entire 2015 season.
Yadier Molina went 4 for 5, including a first-inning grand slam for St. Louis. Mike Mayers (1-1) tossed a scoreless eighth for the win, and Seung-Hwan Oh worked around a solo homer to Jung Ho Kang in the ninth for his 16th save.
Jung Ho Kang had two homers for Pittsburgh and Jordy Mercer hit a two-run double in the fifth as the Pirates took advantage of some sloppy defense by the Cardinals to overcome an early five-run deficit.
Mike Leake returns to the rotation after a stay on the disabled list while battling a case of the shingles. Leake is 9-5 with a 3.28 ERA in his career against Pittsburgh but is 1-2 with a 5.71 ERA this season.
The comeback allowed St. Louis to remain a game in front of the New York Mets for the second wild card in the National League.