In one of his more masterful outings during an up-and-down season, Arroyo (11-10) gave up one earned run and three hits and four strikeouts. His five walks (one intentional) tied a career high, but he also induced two rally-killing double plays.
Lilly (12-7) allowed two earned runs and two hits over his seven innings with two walks and seven strikeouts.
Cincinnati finished with four hits but scored both runs on Lilly without needing a hit. In the sixth, Ryan Hanigan scored the tying run on a Jeff Keppinger fielder's choice. Jolbert Cabrera's sacrifice fly in the seventh scored Edwin Encarnacion with the winning run.
"You never what's going to be the final run that will do it," Baker said. "In this ballpark, you rarely see 2-1."
Arroyo had some early messes to clean up. In the bottom of the second with one out, Mark DeRosa's sharp single up the middle scored Aramis Ramirez for a 1-0 Cubs lead.
In the third, Arroyo walked leadoff batter Alfonso Soriano and issued a one-out walk to Derrek Lee. A 6-4-3 double play by Ramirez ended the inning. In the fourth, following Jim Edmonds' leadoff walk, DeRosa blooped a single into shallow right field. Arroyo escaped again by getting Geovany Soto's grounder to Keppinger at shortstop. He flipped it to Brandon Phillips, who made a spectacular barehanded relay catch and throw to first base to end the inning.
"He had a lot of pitches early," Baker said of Arroyo. "I think he was at 45, 50 pitches in the third inning. Then he shortened the innings down and they did some first-ball hitting, which helped us. He threw a lot of first-pitch strikes."
Arroyo went on to retire nine in a row and 10 of his last 11 batters.
"I felt really good early," said Arroyo, who snapped a brief two-game losing skid but has quality starts in three of his last four games. "I thought the umpire missed a couple of pitches, which cost me walks and got me into some of those jams, and then DeRosa hit the blooper.
"They weren't squaring the ball up at all on me today, but they found the hole a couple of times and put me into trouble. I felt like once I got out of those innings, I was going to have a chance to sit a decent number of hitters down in a row because I had pretty good stuff today."
Lilly gave up just one walk over his first 16 batters of the game. Hanigan broke up Lilly's no-hitter in the sixth with a double into the ivy at the left-center-field wall. It seemed to wake up the bats a little.
"It broke the ice and we got a little momentum," Hanigan said. "The two-strike hit is always nice to come by."
Chris Dickerson then struck out but reached on a wild pitch that put runners on the corners. Keppinger hit a sharp grounder that was stopped nicely by DeRosa as he hit the dirt, with Hanigan scoring the tying run on the fielder's choice.
In the top of the seventh, Edwin Encarnacion blooped a leadoff double to shallow left field and went to third base on Joey Votto's groundout to second base. That set up Encarnacion to score easily on Cabrera's sacrifice fly to left field.
Following Arroyo's departure, David Weathers pitched a 1-2-3 eighth inning for the Reds and Francisco Cordero struck out the side in the ninth for his 24th save.
"It's the name of the game -- pitching and defense," Baker said. "We turned a couple of key double plays. That's huge against some big hitters. It was a great ballgame, not only because we won, but it was a great ballgame to watch manage and play. It was well executed and well played."