Jonathan Herrera bunted for a hit in the top of the eighth and made his way around the bases with help from some inept defense to give Colorado a 2-1 lead.
"Looking for any opportunity to get on base," Herrera said.
Colvin's first home run in 105 at-bats denied the knuckleballer a chance at his 16th win and helped the Rockies to their sixth victory in eight games.
With their 10th loss in 14 games, the Mets dropped into a third-place tie with the Phillies in the NL East.
Colvin made a lunging stop on pinch-hitter Jordany Valdespin's sharp grounder just inside the bag with the bases loaded and his toss to reliever Matt Belisle just beat a diving Valdespin to the bag.
Valdespin jumped up, waving his arms in disbelief, and manager Terry Collins engaged first-base umpire Lance Barksdale in a prolonged discussion.
"They've all been told about you don't see track runners diving at the finish line. There's a reason they don't do it. It slows you down," Collins said. "Any time you hit the ground, it slows you down. Jordany gave it his best effort."
Rafael Betancourt, the Rockies' fifth pitcher, put two runners on before getting Mike Baxter to fly out to center finishing his 24th save.
While the Mets have shifted to a six-man rotation to give extra rest to Johan Santana and Chris Young and help limit rookie Matt Harvey's innings, Dickey will pitch on his regular schedule to give him a couple of more chances at a possible 20-win season.
"It's tough, because the first half of the season, we scored a lot of runs and the offense really picked up the pitchers," Dickey said. " So it would be great to have a couple of games where we don't hit the ball where the pitchers pick the hitters up. It doesn't always work that way."
Meanwhile, Santana is going to have a MRI on his back, and his scheduled start Thursday might be in jeopardy.
In other games *
At Milwaukee, Jonathan Lucroy hit two home runs and the Brewers scored eight runs in the fifth inning to rally for a 9-5 victory over the Chicago Cubs. The Brewers sent 11 batters to the plate and recorded seven hits in the game-turning inning.
* At Phoenix, Giancarlo Stanton homered twice, including the first of back-to-back home runs during Miami's nine-run fourth inning, and the Marlins routed the Arizona Diamondbacks, 12-3.
* At Washington, an error by second baseman Dan Uggla allowed the winning run to score in the 13th inning and the Nationals topped Atlanta, 5-4.
In Braves news, veteran first baseman Lyle Overbay signed a minor league contract.