Upton hit an RBI double in the 11th inning and Tampa Bay beat the Blue Jays 5-4 on Wednesday.
"I think I'm understanding the strike zone and trying to stay aggressive, and right now I guess I'm not missing any pitches," said Upton, who homered in both Monday and Tuesday's games. "Right now that's the approach I have and it's working out for me."
Speedy Rich Thompson was hit by a pitch from Darren Oliver (0-2) to start the 11th and scored on Upton's one-out drive into the left-field corner.
"When I hit that ball, I thought it was going to be second and third with one out, and when I went into second base he was already around," Upton said. "It kind of blew my mind that there was no play at the plate."
Jake McGee (1-1) struck out two during a perfect 11th.
Tampa Bay took two of three from the Blue Jays, and have won 15 consecutive home series against Toronto.
The Rays nearly won it in the ninth on Drew Sutton's two-out infield single, but second baseman Omar Vizquel threw out Carlos Pena, who tried to score from second on the play.
After Jose Bautista doubled with one out in the eighth, Joel Peralta replaced James Shields and gave up a two-run homer to Edwin Encarnacion that tied it 4-4.
"We make a rush late to tie things up, and kind of ran out of time," Blue Jays manager John Farrell said.
Shields, who was looking for his seventh win of the season, allowed three runs and seven hits over 7 1-3 innings. He struck out 10 and walked one.
Tampa Bay took a 2-1 lead during the first when Sutton's double off Ricky Romero scored Pena and Matt Joyce, who both walked. Joyce and Luke Scott both had RBI grounders as the Rays extended the lead to 4-1 in the third.
"We're not playing the best baseball right now," Shields said. "Defensively, offensively, we're not up to where we want to be, but we're finding ways to win."
Romero gave up four runs, two hits and a career-high seven walks in six-plus innings. The left-hander, who also hit a batter, has walked 21 over his past four starts.
"It's frustrating," Romero said. "I beat myself, again."
Bautista put the Blue Jays up 1-0 on his 12th homer this season in the top of first. He has seven homers and 14 RBIs over his past 13 games.
Yan Gomes hit a fifth-inning sacrifice fly that got Toronto within 4-2.
Blue Jays third baseman Brett Lawrie made a diving catch on Chris Gimenez's fourth-inning bunt. Romero, who was also pursuing the ball near the third-base line, was able to leap over Lawrie and avoid a major collision.
NOTES: Tampa Bay owner Stuart Sternberg was at the game. The Rays (27-18) have 10 players on the disabled list, including 3B Evan Longoria and OF Desmond Jennings. "Taking in all of the factors, I feel great," Sternberg said. "I like our position, where we are right now. I don't know how we're getting it done, but we're getting it done." ... Bautista has 125 homers with the Blue Jays, which ties him for eighth on the franchise list with Fred McGriff. ... Toronto 2B Kelly Johnson struck out in all four at-bats against Shields. He doubled off Fernando Rodney in the ninth. Johnson left after the ninth-inning at-bat because of recurring left hamstring tightness. "As the game went along it wasn't any increased pain, but the tightness continued," Farrell said. ... The Blue Jays and Double-A New Hampshire have agreed to a two-year player development contract extension for 2013 and 2014.