The Rockies broke open what had been a 2-2 game and accumulated 16 hits to win for the second time in three games after dropping six out of seven.
Rosario drove in the first two Colorado runs with a single in the first and then brought home the second and third runs in the big seventh inning with a double to center. He also scored in the seventh along with Todd Helton on a triple by Blackmon.
Colorado still held a five-run lead heading into the ninth before Miguel Montero hit a three-run homer with two away to bring the Diamondbacks within two.
Rex Brothers was then called on to record the final out and save his 17th game.
Josh Outman (3-0) earned the win with 1 1/3 innings of one-hit relief. Will Harris (3-1) suffered the loss, retiring only one batter in the seventh while giving up four runs on four hits.
Aaron Carter is still in love with Hilary Duff
Boston schools pull out free condoms over wrapping complaints