Curtis Granderson hit a two-run shot and Alex Rodriguez missed out on his 600th homer in the New York Yankees' 3-2 win over the Cleveland Indians on Monday night.

Granderson connected with one out off Jake Westbrook (6-7), who held Rodriguez hitless in three at-bats and was clinging to a 2-1 lead. Jorge Posada reached on a one-out single before Granderson delighted the many Yankees fans in the crowd of 27,224 hoping to see homer history.

Rodriguez popped out to first against reliever Chris Perez in the ninth to finish an 0 for 4 night.

Shin-Soo Choo put Cleveland ahead 2-1 in the sixth with an RBI double off Javier Vasquez (9-7). Travis Hafner hit a solo homer in the second. It was the designated hitter's fifth straight hit.

Vazquez gave up two runs and five hits over seven innings, improving to 6-2 in 10 starts since June 1. He left after walking Michael Brantley to open the eighth. David Robertson and Boone Logan finished that inning and Mariano Rivera worked the ninth for his 21st save in 23 chances.

Rodriguez went homerless for the fourth consecutive game trying to become the seventh player and youngest to reach the 600 milestone. He returned to the lineup after being removed Sunday when hit by a pitch on the left hand in the eighth inning.

After striking out his first time up against Westbrook, the Yankees third baseman had an apparent single turned into a bizarre double play in the fourth by third-base umpire Jerry Meals.

With Mark Teixeira on first and one out, Rodriguez hit a sinking liner that appeared to touch the ground before going into the glove of left fielder Trevor Crowe. Teixeira saw it that way and was pointing to the ground and saying the ball had been trapped as he stood on second base. Meals, however, ruled it a catch and when second baseman Jason Donald took Crowe's throw and tagged Teixeira, the inning was over.

Yankees manager Joe Girardi argued, but the call stood. TV replays showed the ball appeared to hit the turf.

The Yankees also came within inches of scoring in the fifth but got nothing. Posada drew a one-out walk and Granderson followed with a drive off the top of the wall in right, just missing a homer. Right fielder Choo grabbed the ball on the rebound and threw to second, where Granderson was called out by second-base ump Dale Scott. Replays showed Granderson was safe, though nobody argued.

Swisher tied it with one out in the fourth with the Yankees' first hit, a drive into the right-field seats for his 18th homer.

Westbrook, perhaps making his final start in a Cleveland uniform, gave up three runs and four hits over eight innings. The Indians could deal the high-priced veteran before Saturday's trading deadline, .

Rodriguez will try for his milestone hit Tuesday on his 35th birthday, against right-hander Josh Tomlin, scheduled to make his major-league debut.

NOTES: Cleveland went 0 for 5 with runners in scoring position and is 1 for 31 in its last five games. ... Yankees manager Joe Girardi said RHP Dustin Moseley will start Thursday. He'll replace RHP Sergio Mitre, who allowed seven runs (five earned) over 4 1-3 innings Saturday in the rotation spot vacated by LHP Andy Pettitte (strained groin). ... Teixeira extended his career-high streak of reaching base safely to 42 straight games. ... Indians RHP Kerry Wood (blister) will throw a bullpen session Tuesday. He hasn't pitched since July 11. ... Indians RHP Anthony Reyes (elbow) will make a minor league rehab start at Double-A Akron on Tuesday. He had surgery in June 2009.