CHICAGO (AP) — Carlos Zambrano mixed his pitches instead of his punches and hit his second homer of the season to lead the Chicago Cubs past the Houston Astros 2-1 on Monday night.

In his first appearance at Wrigley Field since his June 1 fight with catcher Michael Barrett, Zambrano allowed three hits and an unearned run in eight strong innings. He threw 128 pitches and outdueled hard-luck loser Woody Williams.

Barrett got the night off. Koyie Hill caught Zambrano for the second consecutive start since the altercation.

Zambrano gave Barrett a black eye and sent him to a hospital for six stitches in his lip after they tussled in the dugout and the clubhouse during a loss to Atlanta.

Zambrano (7-5) had a two-hit shutout going into the eighth when Mike Lamb led off with a walk and pinch-hitter Luke Scott singled as diving center fielder Felix Pie couldn’t come up with his sinking liner.

Brad Ausmus hit a grounder to third and Mark DeRosa threw to second for the force, but second baseman Mike Fontenot’s relay to first was wild for an error that allowed Lamb to score. Zambrano got out of the inning by striking out pinch-hitter Orlando Palmeiro and getting Craig Biggio to fly out to the left-field wall.

Ausmus and Lance Berkman also singled off Zambrano, who walked one and struck out eight in winning his second straight start.

Ryan Dempster, who blew a save chance Sunday night when he gave up three runs in the eighth inning, pitched the ninth for his 13th save in 15 opportunities. He got slugger Carlos Lee to ground into a game-ending double play.

Zambrano hit an opposite-field homer — the 12th of his career — to put Chicago up 2-0 in the third. The Cubs’ first run came in the second with two outs when Fontenot doubled and scored on Ryan Theriot’s single off Williams (2-9).

Williams allowed only four hits and two runs in seven innings.