Archer (3-3) limited the Twins to an unearned run and three hits to outpitch fellow rookie Kyle Gibson (1-2), who was done in by one bad inning in his third career start for Minnesota.
The Twins have lost nine of 10 games. The Rays matched their longest winning streak of the year and are 8-1 during a stretch of 14 consecutive games against the struggling Twins, Chicago White Sox and Houston Astros leading to the All-Star break.
Joyce drove in two runs with a two-out, bases-loaded single that snapped a scoreless tie in the fourth. Johnson followed with a two-run double to give Archer all the support he would need.
The Rays' starter yielded Joe Mauer's first-inning double and singles by Trevor Plouffe and Chris Parmelee in the second. He retired 10 in a row before the Twins scored their only run without getting a hit, thanks to Brian Dozier being hit by a pitch, Archer's two-base throwing error and Ryan Doumit's sacrifice fly.
Alex Torres, Jake McGee and Fernando Rodney each pitched a scoreless inning for the Rays, with Rodney getting the final three outs to finish a combined five-hitter and earn his 21st save.
The Twins had two hits after the second inning—singles by Mauer and Doumit leading off the ninth. Rodney struck out Justin Morneau, Plouffe and Oswaldo Arcia to end the game.
Gibson allowed four runs and four hits over six innings. He walked four and struck out three.
It was the second straight loss for Gibson, who beat Kansas City in his big league debut on June 29 before being roughed up five days later by the New York Yankees.
The 25-year-old right-hander limited the Rays to one baserunner through three innings, but ran into trouble after walking two batters to begin the fourth. James Loney drew a two-out walk to load the bases, and Joyce and Johnson followed with their big hits to dump the Twins into a 4-0 hole.
Meanwhile, Minnesota continued to struggle offensively.
After going 2 for 12 with runners in scoring position while losing Monday's series opener 7-4, the Twins failed to take advantage a couple of early opportunities against Archer. They were 0 for 3 with runners in scoring position in the first two innings, then didn't have another batter reached base until Dozier was hit by a pitch leading off the sixth.
Archer's errant pickoff throw—Tampa Bay's first error in 10 games—allowed Dozier to advance to third before Doumit delivered his sacrifice fly.
NOTES: Tampa Bay rookie OF Wil Myers, in a 5-for-31 slump, was out of the lineup for the first time since making his big league debut on June 18. With the Rays and Twins finishing up this series night game Wednesday followed by a Thursday matinee, Maddon said it was a logical day to give the young slugger a day off. ... Twins LHP Caleb Thielbar, whose grandmother died, will go on the bereavement list Thursday. He will rejoin the team this weekend and be eligible to pitch on Sunday against the New York Yankees. RHP Michael Tonkin will be recalled from Triple-A Rochester to fill Thielbar's spot on the roster. ... Minnesota OF Josh Willingham (left knee) has started doing light exercises. ... Twins OF Wilkin Ramirez (concussion-like symptoms) is still having headaches. He has missed the past 40 games. ... Despite losing its top two home runs hitters (B.J. Upton and Carlos Pena) from last season to free agency, the Rays are on a pace to hit 182 homers—seven more than in 2012.