The Blue Jays had forged a 7-5 lead in the top of the 13th on an RBI single by Omar Vizquel and an error by Nelson Cruz on Yunel Escobar's drive to right field. The Rangers came storming back in the bottom of the frame when Ryota Igarashi issued a leadoff walk to Ian Kinsler and Elvis Andrus drove him home with a double.
Jason Frasor (0-1) came in to pitch and that set the stage for Hamilton, who drove the ball 400 feet to dead center field for the game-winning homer, his MLB-best 20th homer of the season.
Cruz, Yorvit Torrealba and Mitch Moreland (3-for-4) blasted back-to-back-to-back solo homers in the third inning for American League West-leading Texas.
Yoshinori Tateyama (1-0) earned the win, getting the final out in the top of the 13th.
Vizquel finished 3-for-6 with a pair of RBI and Colby Rasmus socked a two-run homer for the Blue Jays, who have allowed 22 runs in two contests against the Rangers.