ST. LOUIS -- After Shelby Miller beat him out for the No. 5 spot in St. Louis' starting rotation during spring training, Joe Kelly spent most of the season's first half languishing in the Cardinals' bullpen.
But since joining the rotation last month due to injuries and ineffectiveness from other starters, Kelly has been nothing short of lights out.
He stood tall again Tuesday night, outdueling Los Angeles Dodgers ace Clayton Kershaw and snapping the visitors' 15-game road winning streak with 5 1/3 effective innings in a 5-1 decision at Busch Stadium.
Kelly (3-3) scattered six hits, including Adrian Gonzalez's RBI single in the sixth that scored Los Angeles' only run. It snapped Kelly's personal streak of 20 innings without yielding a run, but that was all that went wrong for him on this night.
"I'm just trying to do what's been working for me," Kelly said. "I've been staying within my mechanics and approach. I've been more consistent with my delivery."
Kelly walked two and struck out one, but worked his way out of trouble with the help of three double plays. His most precise pitching, though, might have occurred in the third after the Dodgers (62-50) got their first two hitters aboard.
Kershaw fouled off an 0-2 bunt for strike three, Carl Crawford flew out to right on the first pitch and Mark Ellis bounced out to third, denying Los Angeles an early lead with the National League's earned run average leader on the hill.
"Joe needed to come up big for us and he did," St. Louis manager Mike Matheny said. "He used both sides of the plate well. You can't ask for much more than what he did."
Kelly even contributed offensively during the Cardinals' two-run fifth against Kershaw (10-7), which started with Jon Jay's one-out double and Tony Cruz's RBI single that snapped a scoreless tie.
Pete Kozma followed with a double down the left-field line, moving Cruz to third, and Kelly helped his cause with a bouncer to second that plated Cruz. Ellis settled for the sure out at first rather than risk not getting Cruz at home.
"I didn't want to strike out," Kelly said. "I just wanted to put the ball in play. (Kershaw) threw me a curve and I was able to make contact."
After Kelly departed, five relievers picked up the last 11 outs as St. Louis (66-46) stayed within two games of Pittsburgh in the NL Central. Seth Maness may have gotten the biggest two, inducing a 6-4-3 double play from A.J. Ellis with the bases loaded and one out in the sixth.
Kershaw lost for the third straight time against the Cardinals despite yielding just two runs off six hits over six innings. The reigning NL Pitcher of the Month has received only three runs of support in his last three starts.
"You take it on a case-by-case basis," Kershaw said of the lack of offense. "This guy (Kelly) has been on some kind of a streak and he was good tonight."
St. Louis iced it in the bottom of the eighth with three runs off reliever Brandon League. Carlos Beltran cracked his 20th homer -- his first since June 30 at Oakland -- to right-center and pinch-hitter Matt Adams rifled his ninth into the seats in right after Matt Holliday drew a two-out walk.
While Los Angeles pondered its first defeat on the road since July 6, the Cardinals basked in just their fourth win in 13 games.
"We beat the best left-hander in the game," Beltran said of Kershaw. "It's encouraging to beat him."
NOTES: SS Hanley Ramirez (jammed right shoulder) didn't play for the second consecutive game, although the Dodgers are optimistic he'll avoid a stint on the disabled list. Ramirez was injured going into the seats behind third base at Wrigley Field in the seventh inning Sunday ... St. Louis LHP Jaime Garcia (shoulder) says he should be able to play catch for the first time later this month since undergoing season-ending surgery to repair a torn labrum in late May. Garcia went 5-2 in nine starts this year. ... Cardinals C Yadier Molina (sprained right knee) said that he should be able to come off the 15-day disabled list the first day he's eligible, which is Aug. 15. The club intends to offer Molina, who caught the first 10 games after the All-Star break before his knee balked on him during the nightcap of a July 30 doubleheader in Pittsburgh, more off days down the stretch.