Burnett (6-2) held the Royals hitless until the sixth inning, finishing with two runs allowed on five hits with six strikeouts.
Andrew McCutchen socked a two-run homer and drove in three runs for Pittsburgh, which improved to 7-2 in June.
Royals starter Bruce Chen (5-6) absorbed the loss, surrendering three runs on four hits over five full frames.
Alcides Escobar collected a pair of hits and drove in a run for Kansas City.
Teacher apologizes for showing sexual image of herself in class
Jessica Simpson shares three-way kiss with friends in photo