Brown hit his second homer of the season during a four-run fourth that put the Royals ahead 8-1. Kansas City has won two in a row at Tampa Bay following a seven-game losing streak, all at home.
"We get alive when we're not at home," Brown said. "We play in some hitters' parks sometimes. At home, a lot of our balls get knocked down, or balls that are usually hits are outs. As long as we stay away from 'The K' we're all right."
The Royals are 12-14 on the road, compared to a 9-21 mark at Kauffman Stadium, and have won eight of their last 10 road games.
Perez (3-5) gave up four runs and eight hits in five-plus innings. He had been winless in six starts -- three of them losses -- since beating Minnesota on April 25.
"This is nice to have a win like that, seeing these guys score eight runs in the first four innings," Perez said.
Tony Pena extended his career-best hitting streak to 11 games with an RBI infield single during the Royals' four-run second off Edwin Jackson (0-7). After Pena's hit made it 1-0, David DeJesus snapped an 0-for-12 slide with a two-run double. Mark Grudzielanek's run-scoring grounder extended the lead to 4-0.
Jackson allowed six runs and six hits in 3 1/3 innings. The right-hander's spot in the rotation has been in jeopardy and he could become the third pitcher -- joining Jae Seo and Casey Fossum -- to lose it.
"We're planning on putting him out there next time out," Tampa Bay manager Joe Maddon said. "We've seen some good performances this year, but we've seen this several times. He's going to turn the corner at some point."
Jackson struck out four and walked four during a 91-pitch outing. He is one loss away from Tanyon Sturtze's team-record of eight straight losses to start a season set in 2002.
"I don't know if it's back to square one, but it's a couple steps back," Jackson said.
Seo was designated for assignment and Fossum was moved into the bullpen Friday. Left-hander J.P. Howell and right-hander Andy Sonnanstine were promoted from Triple-A Durham to join the revamped rotation.
Tampa Bay's Akinori Iwamura had a third-inning RBI single. He drove in Josh Wilson, whose two-out double was the first Devil Rays hit in 24 at-bats going back to Friday night's 4-1 loss to the Royals.
A ball Iwamura chased in the bullpen down the third-base line in the eighth inning bounced up and hit him in the left eye. He was checked by a team trainer and stayed in the game for the rest of the inning but was then removed.
"It feels like I got knocked out," Iwamura said through an interpreter.
Iwamura had some blurred vision and a small cut above the eye, but no fractures. He was scheduled to see an eye doctor late Saturday, which would determine his status for Sunday's game.
"He gave us a chance to win," Royals manager Buddy Bell. "He got Upton and Crawford, two big strikeouts. I think that took a lot out of him."
Brendan Harris had a three-run homer to slice the lead to 8-4 in the sixth.
- Iwamura batted leadoff for the first time this season. Maddon said it is possible that the former Japanese Central League star might will hit there full-time.
- Royals DH Mike Sweeney was out of the lineup with flulike symptoms.
- Kansas City RHP Scott Elarton, Sunday's scheduled starter, is 0-5 with a 9.13 ERA in five career games against Tampa Bay.