DENVER — Cole Hamels again pitched well, and again he ended up with another disappointing loss.

Hamels and Jhoulys Chacin squared off in a rare pitcher’s duel at Coors Field on Sunday. Chacin pitched eight scoreless innings and left with two outs in the ninth after giving up two runs.

Hamels finished on the wrong end of the Philadelphia Phillies’ 5-2 loss to the Colorado Rockies. That has been an all-too-familiar outcome for him this season.

The Phillies have scored only 31 runs while Hamels (2-10) has been on the mound in 15 starts. He has lost two straight decisions and eight of nine.

His only mistake was leaving a 91 mph fastball up to Wilin Rosario, who lined it into the left-field seats on the first pitch of the Rockies’ second inning. It was Rosario’s 11th home run of the season.

Hamels matched Chacin for the next four innings, retiring 12 in a row until Carlos Gonzalez led off the seventh with an infield single. Cuddyer blooped a double just over first base and down the right-field line.

Hamels thought his 0-2 pitch to Cuddyer was a strike, but umpire Marvin Hudson ruled otherwise. Cuddyer’s double came on Hamels’ next pitch.

“You have to make another pitch,” he said. “I did and I made the pitch I wanted. Unfortunately he hit it to the right part of the yard. I think that’s the hard part, because the game is so close. You’re trying to keep the game within reason and battling.”

Phillies manager Charlie Manuel visited the mound to settle Hamels just before he faced Pacheco.

Pacheco brought in a run with a slow grounder to third baseman Freddy Galvis, who had no play at the plate and threw out Pacheco at first.

“Charlie was trying to talk to me about making the right type of pitch,” Hamels said, “and I feel like I made the right type of pitch, and I think he agreed. Unfortunately, the guy hit it four feet. That’s the hard part about baseball.”

Nolan Arenado followed with a double to make it 3-0.

Jimmy Rollins hit an RBI double with two outs in the Phillies’ ninth and Ryan Howard followed with a single, finishing Chacin (5-3).

Rex Brothers got the final out for his second save of the season.

The teams combined for 30 runs and 55 hits in splitting the first two games of the series, but pitchers dominated the finale.

Chacin needed just 74 pitches — 59 strikes — to get through the first eight innings, and he had only one three-ball count, to Rollins in the fourth inning. Chacin looked as though he was going to go the distance entering the ninth.

He gave up a one-out single to Ben Revere, who scored when Rollins’ drive to the wall was just over the head of Cuddyer in right field.

After Howard hit an RBI single, manager Walt Weiss went to remove Chacin to a chorus of boos from the 45,186 fans who were hoping to see the first complete game by Rockies’ starter in two seasons.

The loss ended a 3-7 road trip for the Phillies.

“We started the road trip at .500, and we’re at four under again,” Manuel said. “We’ve got to stay with them and try to play better and try to score some runs and hopefully get the same kind of pitching that we got today.”

Hamels allowed three runs on six hits, walked two and struck out seven.

Notes: Phillies catcher Carlos Ruiz (right-hamstring strain) went 0-for-2 in his first rehab start with triple-A Lehigh on Saturday. ... RHP John Lannan (0-1) is expected to be activated from the disabled list today to start the series opener against Washington.