Kyle Seager homered on the front end of back-to-back shots with Cruz, and Brad Miller added a solo shot among his three hits for the Mariners, who have won three of four since dropping four straight.
Jose Reyes, in his first appearance at Coors Field since being acquired by Colorado in the trade deadline deal that sent Troy Tulowitzki to Toronto, had two RBI singles. Charlie Blackmon added four hits, including two doubles.
Trailing 8-4 heading into the bottom of the ninth, the Rockies scored three runs and had runners at the corners with two outs before Carson Smith induced a game-ending fly out from Blackmon for his 10th save.
Bouncing back from a rough start last time out — Hernandez allowed seven runs in Seattle’s 8-2 loss to Arizona last week — the Mariners’ ace went 6 2-3 innings and allowed four runs and 11 hits. He improved to 8-0 with a 1.65 ERA in 12 starts following a loss since the beginning of last season.
Hernandez (13-6) struck out nine and walked one in his first career appearance at hitter-friendly Coors Field.
Seattle jumped on Eddie Butler with a four-run first highlighted by Jesus Montero’s two-run double. Butler (3-8) went four innings and allowed seven runs and seven hits, including three homers in losing a third straight decision. All of the runs he allowed scored with two outs.
Seager and Cruz went back-to-back in the second inning to put Seattle up 6-1. Cruz’s homer extended his hitting streak to 14 games.
Miller connected for his ninth of the season in the third.
After Blackmon’s RBI double in the sixth pulled the Rockies within 7-4, Robinson Cano doubled in the top of the seventh to drive in his second run of the game.
Mariners: Cano was back in the starting lineup at 2B after missing time due to a Grade 1 abdominal strain.
Rockies: RHP Chad Bettis was scheduled to throw a bullpen session on Tuesday, his first since going on the 15-day DL on July 19, because of right elbow inflammation.
Mariners: LHP Vidal Nuno (0-0) will make his first start for Seattle since being acquired from Arizona in early June as part of a six-player trade.
Rockies: RHP Jon Gray (0-0), Colorado’s top draft pick and third player taken in the 2013 draft, is slated to make his major league debut Tuesday. He went 3-1 with a 2.70 ERA in six starts last month for Triple-A Albuquerque.