"A lot of guys had some good nights," Hosmer said. "We needed a night like this."
Kansas City matched its best run output of the year and set a season high with 13 hits. Drew Butera homered and drove in his first two runs of the season, helping the Royals win for the fourth time in 17 games. Alcides Escobar, Lorenzo Cain, Salvador Perez and Whit Merrifield each had two hits for Kansas City, and Hosmer also stole two bases.
"Maybe this is the start of something good," Butera said. "It felt exactly like our brand of baseball -- grind out at-bats, get on base, put some pressure on the pitcher and the defense."
Karns (2-2) completed 6 1/3 innings, allowing two runs, six hits and two walks while matching his career high in strikeouts.
Blake Snell (0-3) allowed four runs and 10 hits over five innings for Tampa Bay. He failed to get an out in the sixth inning for the 10th time in his last 11 starts.
"The pitch count got driven up there again. I'm not sure I have the answer or any of us have an answer," Rays manager Kevin Cash said. "We know what needs to take place, but we don't know exactly (how to do it). We've got a lot of people trying to help him now."
Butera led off the third inning with his homer, the first of five straight hits in a three-run inning. Butera drove in another run with a single in the sixth.
Brad Miller singled in Corey Dickerson for the Rays in the first inning, but Karns pitched shutout ball from then until the seventh. He struck out three straight following Colby Rasmus' triple in the second, then got a strikeout and a double-play grounder with the bases loaded in the third.
"Those were pretty big innings for him," Royals manager Ned Yost said.
Rays right fielder Steven Souza Jr. left the game early with a sore thumb after getting jammed with a pitch.
The Rays struck out 16 times, marking the 22nd time in 34 games they have struck out 10 or more times in a game. They came into the game with a major league leading 330 strikeouts.
Royals: RHP Ian Kennedy told Yost that his strained right hamstring is improving, but no timetable is set on Kennedy's return.
Rays: SS Matt Duffy, coming back from Achilles tendon surgery, will start a minor league rehab assignment Tuesday night with Class A Charlotte. ... C Wilson Ramos, on the 60-day disabled list due to right knee surgery, ran the arc behind the infield dirt. He is also doing limited catching drills.
Royals: RHP Chris Young, who last pitched in a three-inning relief appearance on May 2, will make his first start of the season Tuesday night against the Rays.
Rays: RHP Matt Andriese (2-1) has gone seven innings in consecutive starts entering his outing Tuesday night against the Royals. Prior to this stretch, he had a streak of 18 straight starts of six innings or fewer.
More AP baseball: apnews.com/tag/MLBbaseball