NEW YORK -- Anyone who thought Houston would be a Yankee Stadium pushover hasn't been paying attention to Chris Carter at the plate.
After striking out four straight times, Carter snapped a ninth-inning tie with a colossal three-run homer Tuesday night that extended his second-half power surge and sent the Astros to a 7-4 victory over the New York Yankees.
"I was just trying to hit it and put it in play. My first four at-bats, I didn't do anything," Carter said with a smile. "I went up there in the last at-bat and just tried to forget about it and regroup."
Marwin Gonzalez knocked in two runs with a pinch-hit single, and the fourth-place Astros (53-73) won for the third time in four meetings with the Yankees this year. Despite a $154 million difference in opening-day payroll, Houston took two of three at home against New York to begin the season.
"Shows us that we're on the right track," winning pitcher Josh Fields said. "We're playing a lot better baseball than last year."
New York fell four games out of a playoff spot.
"We were able to come back and tie the game up and we let it slip away," manager Joe Girardi said.
David Robertson (1-4) walked consecutive batters and threw seven straight balls before Carter launched a 3-0 pitch into the raised concrete bleachers in left field for his 30th home run.
"I tried to make a good pitch down and away. Instead, I threw it right into his bat path, and he put it 30 rows deep," Robertson said. "I struggled out there tonight and I blew it for our team."
Carter, the reigning AL player of the week, is batting .340 with eight homers and 19 RBIs in his past 13 games. He leads the majors with 17 home runs and 42 RBIs since July 1.
"It was like somebody flipped a light switch," Fields said.
Chad Qualls worked a perfect ninth for his 14th save.
Prado singled in the fourth off starter Brett Oberholtzer before McCann drove an 0-2 pitch into the second deck in right for his 14th homer.
Robbie Grossman hit a two-out RBI single in the fifth, and Houston chased Chris Capuano on his 36th birthday during a three-run sixth. Fowler led off with a triple and scored on Jason Castro's tying groundout. After consecutive singles, both runners moved up when Jake Marisnick's groundout deflected off reliever Adam Warren.
Astros manager Bo Porter pushed the right button, lifting No. 9 batter Gregorio Petit for a left-handed hitter even though Petit had doubled both times up. Gonzalez hit a two-run single that gave Houston a 4-2 lead.
It was the first run-scoring hit by a Houston pinch hitter since Jesus Guzman had an RBI single against Texas on May 14.
"I didn't think that I was going in that early," Gonzalez said. "Bo told me like 10 minutes before."
Prado tied it in the bottom half with a two-run double that ended Oberholtzer's night.
ON THE GREEN
Tiger Woods was on the field during batting practice before heading to the runway behind the Yankees dugout, where the golf star greeted injured New York pitcher Masahiro Tanaka and then Astros outfielder Dexter Fowler.
Astros: Guzman was activated from the disabled list, and LHP Darin Downs was placed on the 15-day DL, retroactive to Aug. 15, with a strained muscle on his right side. Guzman had been sidelined since Aug. 2 because of back spasms. ... OF Alex Presley, sidelined since July 8 with a strained right oblique, joined the team to receive treatment but won't be activated from the DL for a while.
Yankees: Tanaka (elbow) plans to throw another bullpen Wednesday. ... Girardi said a decision on whether to use RHP David Phelps (elbow inflammation) as a starter or reliever when he gets back probably will depend on how long he's out.
Robertson had gone 27 games without giving up a home run since Josh Willingham connected for Minnesota on June 1 at Yankee Stadium.