CINCINNATI (AP) -- Three harmless singles. That's all the Cubs managed off Scott Feldman and Cincinnati's bullpen.
Feldman limited Chicago's depleted lineup to two hits over seven innings on Friday night, and Adam Duvall hit a three-run homer, powering the Reds to a 5-0 victory.
The Reds won for only the sixth time in their last 29 games against the NL Central rival.
Feldman (7-5) didn't allow a hit until Ian Happ singled with two outs in the sixth inning. Addison Russell singled in the seventh. Feldman walked two, struck out seven and threw 108 pitches, using an improved breaking pitch that he's worked on the last few days.
"I kind of lost my feel for the breaking ball the last two or three starts, but my fastball was better so I was getting away with it," Feldman said. "We kind of worked on (the breaking pitch) in between. It was better tonight."
The Reds signed him in January to fill out the rotation, and he wound up being their opening day starter. His seven wins lead the staff.
"Feldman has been an absolute godsend," manager Bryan Price said. "We are lucky to have him."
Michael Lorenzen and Wandy Peralta each pitched an inning, completing the combined three-hitter.
Duvall connected for his third homer in four games off left-hander Mike Montgomery (1-5) in the fourth inning, hitting a high changeup. The Reds also scored on Jose Peraza's squeeze bunt for a single in the sixth, and again on catcher Victor Caratini's throwing error in the eighth.
The defending World Series champions were missing third baseman Kris Bryant for the second straight game, sidelined by a sprained right ankle. Jayson Heyward and Ben Zobrist remain on the disabled list, leaving the Cubs to depend upon young players.
"The last thing to come is the development of the at-bats at the major league level," manager Joe Maddon said. "We can play great defense, we can run the bases, we throw well, we do a lot of things well. It's just that our at-bats are inconsistent."
Chicago is stuck in a win-one, lose-one pattern -- no back-to-back victories since June 19-20.
The Cubs had homered in each of their last 15 games at Great American Ball Park, but had only one close call -- Happ's fly out to the wall in left field -- as they were shut out for the seventh time this season, second-most in the NL. The Reds snapped their streak of giving up homers in 22 consecutive games, four shy of the major league record.
Montgomery made his fifth start since moving from the bullpen and replacing the injured Kyle Hendricks. He gave up nine hits and four runs -- both season highs -- over 6 2/3 innings while throwing 102 pitches for the first time.
"I feel really good with where I'm at," Montgomery said. "I feel I made only one mistake. The other balls were ones that took bad hops, found holes, got by somehow. Those are things you can't really get upset about. They're not in your control."
Happ returned to his second home. Happ grew up in the Pittsburgh area and played at the University of Cincinnati before getting drafted in the first round in 2015. He played one game at Great American Ball Park while at UC and attended others as a fan.
Cubs center fielder Albert Almora Jr. failed to make a diving catch of Billy Hamilton's sinking liner in the fourth inning, but got up and threw the speedy player out at third as he tried to stretch the hit into a triple.
Cubs: INF Jeimer Candelario was much improved after leaving Thursday's game with a bruised left knee.
Reds: SS Zack Cozart was activated off the DL. He had been sidelined since June 19 by a strained right thigh. RHP Kevin Shackelford was optioned to Triple-A. Cozart had two singles.
Cubs: Eddie Butler (4-2) makes his 10th start of the season. He's allowed only one earned run in his last two starts, a span of nine innings.
Reds: RHP Jackson Stephens will make his major league debut, the Reds' seventh rookie starter this season.