Rays 4, Twins 1: James Shields allowed one run in eight innings to win his third straight start and lead host Tampa Bay over Minnesota.
B.J. Upton had two hits and drove in two runs to lift the Rays above .500 with their third win in four games.
Shields (3-0) carried a three-hit shutout into the ninth inning before allowing a leadoff single to Josh Willingham, who extended his season-opening hitting streak to 15 games.
Justin Morneau's double chased Shields in favor of Fernando Rodney, who allowed a sacrifice fly to Ryan Doumit before recording back-to-back strikeouts to earn his fifth save.
Twins starter Carl Pavano (1-2) was charged with three runs on seven hits in six innings. He struck out seven and walked two.
Tampa Bay broke the scoreless tie in the sixth after the Twins made a curious decision to intentionally walk Matt Joyce to load the bases for Upton, who entered the game 7-for-16 against Pavano.
Upton, in his second game of the season, foiled the strategy with a two-run single, and an errant throw on the play plated the third run.
The Rays tacked on a run in the seventh off Alex Brunette on a single by Desmond Jennings, a hit batsman and two errors for a 4-0 cushion.
Shields escaped a jam in the sixth - much of it his own doing - by walking Willingham and plunking Morneau to load the bases before getting Doumit to line out to third.
GAME NOTEBOOK: Willingham tied the franchise record held by Kirby Puckett, who hit safely in the first 15 games of the season in 1994. ... Rays first baseman-outfielder Brandon Allen, who was claimed off waivers from Oakland, joined the team Saturday. Allen appeared in only three games and had seven at-bats before the Athletics designated him for assignment. Mauer had his second straight two-hit night and is batting .449 (33-for-74) in 19 games at Tropicana Field. Morneau was back in the lineup after missing Friday's series opener. He had fouled a ball off his foot in Thursday's game against the Yankees.