It was Cron's 20th homer of the season and came with one out off of Daniel Hudson (4-2).
''A guy that's been swinging the bat well for us ... C.J. did what he can do. I really thought we deserved that one,'' Rockies manager Bud Black said.
Hudson, acquired from Washington at the trade deadline, got Charlie Blackmon to line out to start the ninth. Cron hit the first pitch he saw from Hudson over the scoreboard in right field to end it.
''Chuck just squared one up the pitch before so I knew there was a chance he might go slider there. Nothing I was sitting on, but I was able to react,'' Cron said.
Connor Joe homered on his 29th birthday, and Blackmon also went deep for the Rockies.
San Diego had tied it in the top of the ninth on Trent Grisham's two-out, three-run homer against Daniel Bard (6-5). It was his 13th of the season.
''It's great to see the guys continue to fight,'' manager Jayce Tingler said. ''You battle, you get the tying run on and Grish has the great at-bat, was able to go oppo and tie the game up.
''They all hurt. Especially when you fight to get back in this one.''
Colorado starter Antonio Senzatela tossed seven strong innings, but missed out on his first win since June 2. He allowed two runs on six hits and got his last four outs on ground balls.
San Diego's Fernando Tatis Jr. doubled and scored in his second game back from a partially dislocated left shoulder. He hit two homers in his return Sunday and went 1 for 4 Monday night.
It wasn't enough to prevent the Padres from losing for the fifth time in six games.
''All we can really do is come to the field and be ready to go tomorrow,'' Grisham said.
In addition to his seventh homer of the season leading off the first, Joe singled and made a running catch of Adam Frazier's fly ball to the gap in left-center field, robbing him of extra bases.
The Rockies tacked on four more runs in the third on Trevor Story's two-run double and Blackmon's two-run homer off of Ryan Weathers.
Weathers lasted just four innings, giving up five runs on eight hits.
''I feel like any mistake I make right now they hammer,'' Weathers said.
San Diego got its first run when Jake Cronenworth scored on a wild pitch that allowed Eric Hosmer to reach first on a strikeout in the second inning. Manny Machado drove in Tatis with a single in the sixth.
Padres: Manager Jayce Tingler said INF/OF Jurickson Profar will play three more games with Triple-A El Paso this week. Profar has been on the 10-day injured list since Aug. 6 with an undisclosed injury.
The defenses were sharp for both teams on Monday night, combining for six double plays. Both turned three each through the first six innings, four of which were inning-ending double plays. All of Colorado's twin killings finished a frame and squelched potential rallies.
Colorado will send RHP German Marquez (10-9, 3.29 ERA) to the mound Tuesday. He is 2-0 with a 1.38 ERA in two starts this season against the Padres, with both games coming in San Diego. The Padres have not named a starter.
More AP MLB: https://apnews.com/hub/MLB and https://twitter.com/AP-Sports
Copyright 2022 STATS LLC and Associated Press. Any commercial use or distribution without the express written consent of STATS LLC and Associated Press is strictly prohibited.