After the Yankees took a 3-0 lead in the third, Garcia gave up a pair of home runs to Josh Hamilton. They were the Hamilton's 33rd and 34th of the year.
Boone Logan came on to get the last out of the seventh for New York, David Robertson struck out two in a perfect eighth and Rafael Soriano survived a two-out throwing error by third baseman Eric Chavez in the ninth that put the tying run on base. Soriano then got David Murphy on a fielder's choice grounder for his 29th save.
New York has won the first three games in a four-game series.
Garcia (7-5) gave up four hits over 6 2/3 innings while striking out six and walking one.