Davis (2-0) lasted seven innings, striking out seven but not walking a batter.
The following inning, Juan Francisco singled with two outs. Chris Johnson followed with a bloop down the right-field line that landed just beyond the diving Kansas City second baseman Chris Getz. Francisco tried to score but Getz ran down the ball and threw to catcher Salvador Perez and Francisco was out by a wide margin.
Kelvin Herrera pitched a one-hit eighth, setting up Royals closer Greg Holland, who finished the game with three quick strikeouts for his third save.
Atlanta starter Mike Minor (2-1) also allowed just five hits and struck out five in six innings.
However, the Royals bunched three of the hits in the fourth inning for a run.
It was the first Atlanta loss since April 4, the third game of the season. At 12-2 the Braves have the best record in the major leagues. The other loss -- 2-0 to Philadelphia -- was also on a shutout.