With the game tied in the 12th, Matt Dominguez led off with a single against former Astro Wilton Lopez (1-2), and pinch-runner Ronny Cedeno went to second on a Marwin Gonzalez sacrifice.
After Robbie Grossman struck out, the Rockies issued an intentional pass to Jose Altuve to face Barnes -- but he crossed up the strategy by belting a pitch into the right field corner for a game-winning ground-rule double.
Paul Clemens (2-2) earned the decision with a scoreless top of the 12th as Houston claimed the first of a four-game interleague set.
Carlos Gonzalez went 3-for-6 with an RBI double for Colorado, which dropped a third straight.
Easer Egg Roll brings thousands to White House
Moore to attend retreat in to avoid Kutcher's wedding