Cleveland ended a four-game losing streak and ensured the Mariners would have a losing record for the fifth time in seven years.
Seattle took a 3-0 lead into the sixth but the Indians loaded the bases on singles by Luis Valbuena, Michael Brantley and Asdrubal Cabrera. Choo then hit a bases-clearing double and scored the fourth run of the inning on a single by Travis Hafner.
Choo's ninth-inning homer was his 16th of the season.
The comeback made a winner out of starter Josh Timlin (3-3), who allowed three runs on seven hits in six innings. He struck out five.
Chris Perez needed only eight pitches to retire the side in the ninth for his 17th save.
Doug Fister (4-11) was charged with the loss after surrendering four runs on seven hits in 5 1/3 innings.
Copyright 2010 United Press International, Inc. (UPI).