Stults (7-7) allowed one run on four hits and struck out five and also had two hits to help San Diego end a 10-game losing streak.
Alexi Amarista drove in both of San Diego's runs with an RBI triple and single. Evereth Cabrera had two hits and scored a run.
Colorado dodged a shutout in the top of the ninth on a two-out RBI single by Nolan Arenado, but Padres manager Bud Black decided to leave Stults in and complete his second complete game of the season.
Jhoulys Chacin (8-4) took the loss for the Rockies, who have lost seven of their last nine. Chacin allowed one run on five hits and fanned four.