If the Red Sox were in a hitting groove, perhaps Buchholz could have notched a win anyway. But after scoring two runs in the first, the Red Sox were stifled for the rest of the night, save for a ninth-inning rally that fell just short.
With All-Star closer Joakim Soria on for the Royals and the Sox down by a pair, Coco Crisp led off with a single up the middle. With one out, Dustin Pedroia (3-for-4, 25-game road hitting streak) looped in a single to left.
David Ortiz (0-for-5) grounded to first, pushing the tying runs to second and third. Kevin Youkilis was intentionally walked to load the bases. Jason Bay then hit a soft roller that third baseman Alex Gordon and shortstop Tony Pena converged on for an infield hit, bringing home a run to put the Sox within one.
Sean Casey, with visions of playing the role of hero, fell behind 0-2, but lined one to right. But instead of dropping, right fielder Mark Teahen hauled it in to end the game.
"I really thought I got it in the corner, and I don't know if he had us shaded over there or whatever, but Teahen was just there when I hit it," said Casey. "It was right at him."
Thanks to Tampa Bay losing to the Indians, the Red Sox remained three games back in the American League East.
Playing without Mike Lowell (right hip flexor), Boston jumped out quickly against Gil Meche. J.D. Drew, leading off for the first time this season, opened the game with a walk. Pedroia ripped a double to right. Drew scored on a grounder to first by Ortiz. Youkilis made it 2-0 with an RBI double to right.
"We came out of the gate [strong]," said Francona. "J.D. had a great at-bat. [Pedroia] bangs a ball off the wall. Youk takes a great swing. [Meche] settled in and really settled in. Started throwing his breaking ball and has enough on his fastball. He made some pretty good pitches."
But Kansas City didn't take long to start making noise against Buchholz. Alex Gordon ripped a solo shot to right in the second to cut Boston's lead to 2-1. In the third, the Royals put forth the type of extended rally that has happened to Buchholz numerous times this season.
They sent their entire batting order to the plate. But the rally was almost over before it started. Buchholz struck out Mitch Maier to open the inning and then gave up a single to Mike Aviles. Esteban German was next, and he almost hit into an inning-ending double play. But just before the ball got to Red Sox shortstop Jed Lowrie, it exploded and deflected off him for a hit.
"I don't know why it's been like that all year, it just feels like I've said it a lot now. I need to make a pitch and get a ground ball," Buchholz said. "The ground ball tonight was hit 150 miles an hour at Jed. You can't fault anybody for that. It feels like it's an inch away. I don't have a really good explanation for it. It's just the way it is right now."
The good and the bad of it for Buchholz is that he feels like he's so close.
"I feel like I might start pressing a little bit and try to make a pitch better than I need to," Buchholz said. "I'm just not catching any breaks at all. The great players that play this game -- they make their breaks. That's the little challenge for me right now to make a break. It feels like when I do make a pitch, it's right out of the reach of somebody."
Teahen's RBI single tied the game. Billy Butler gave the Royals their first lead with a sacrifice fly. With the bases loaded, Buchholz hit John Buck to force in a run, giving Kansas City a 4-2 edge.
Buchholz is 0-5 in his past seven starts since May 2. He has pitched 15 times since his no-hitter of last Sept. 1, going 3-8 with a 5.47 ERA.
But the Red Sox remain confident in their young right-hander.
"Just time and steps," said catcher Jason Varitek. "It was good that after that rough inning he was able to go out there and pitch out of another jam and able to put some more zeroes up and get us through the sixth."
Finishing the night with zeroes in his final three innings might be the momentum Buchholz needs going into his next outing, which will take place on Sunday in Chicago.
"I do like the way he went back out there and handled himself," Francona said. "He stayed out there and pitched. That's the kid we really think can compete in this league."
Meche threw 109 pitches over his six innings of work, allowing four hits and two runs, walking five and striking out nine.
"Meche settled in pretty well," said Varitek. "He's pitched well against us over the course of time, and we really weren't able to get a whole lot going."