Perez highlighted a six-run eighth inning with a two-run double off Sergio Santos.
Omar Infante added two RBI while Nori Aoki and Jarrod Dyson finished with an RBI apiece for the Royals, winners in three of their last four games.
Aaron Crow (1-1) earned the win with a scoreless eighth inning. Kansas City starter Jason Vargas allowed five runs on 10 hits over 6 1/3 innings.
Brett Cecil (0-2) was charged with the loss after giving up back-to-back singles to open the eighth inning. Both runners came around on Perez's two-run double.