David Ortiz homered and Ryan Kalish had a tiebreaking RBI single to lead the Boston Red Sox to a 7-4 victory over the Chicago Cubs on Sunday night.

Kalish also scored on Daniel Nanva's squeeze bunt to cap Boston's three-run seventh inning that gave the Red Sox a 6-3 lead.

Matt Albers (2-0) pitched one inning to pick up the win.

The Cubs loaded the bases with no outs against Alfredo Aceves in the ninth, but after David DeJesus hit a sacrifice fly to center, Reed Johnson struck out and Darwin Barney hit a popup to third baseman Nick Punto to end the game

Shawn Camp (2-4) gave up hits to both batters he faced — a double to Darnell McDonald and single to Jarrod Saltalamacchia — to start the seventh.

Kalish then singled to center off James Russell to drive in McDonald and put the Red Sox ahead 4-3. Saltalamacchia scored on pinch-hitter Will Middlebrooks' sacrifice fly, with Kalish advancing to third on catcher Wellington Castillo's fielding error. Kalish then scored on Nava's bunt.

Kalish was called up from Triple-A Pawtucket before the game and inserted into the starting lineup as the Red Sox placed outfielder Ryan Sweeney on the 15-day disabled list with irritation in a bone on his left foot.

Nava entered the game in the sixth inning in place of Scott Podsednik, who left with left groin discomfort. The Red Sox currently have 12 players on the disabled list.

Ortiz hit his 16th home run of the season in the fourth inning when he drove a 2-2 changeup off Cubs starter Paul Maholm to the left-center field bleachers, giving Boston a 3-2 lead.

The Cubs tied it in the bottom of the sixth when, with runners on first and third, Jeff Baker hit a comebacker to Albers, who turned and fired to second, where both Pedroia and shortstop Mike Aviles converged on the bag at the same time. The ball was dropped and Aviles was charged with an error.

Barney, who had reached on an error by third baseman Kevin Youkilis to open the inning, scored on the play.

Dustin Pedroia, mired in a 6-for-45 slump, had two hits for the Red Sox.

Pedroia's double to the gap in left-center in the first drove in Podsednik, and Pedroia scored on Ortiz's one-out single to put Boston up 2-0.

Starlin Castro, who had three hits and two RBIs to end a 2-for 21 slide, got the Cubs on the board in the bottom of the first with an RBI triple.

The Cubs, who have lost 24 of their last 31, tied it in the second as Pedroia misplayed Castro's popup with two outs in the third, allowing a hustling Barney to score all the way from first base as the play was ruled a double.

The Red Sox added a run in the eighth on Saltalamacchia's RBI grounder.

Franklin Morales, starting in place of the injured Josh Beckett (right shoulder inflammation), gave up two runs and four hits with a career-high nine strikeouts in five innings. It was his first start of the year and 16th of his career.

Morales also singled in the fifth.

NOTES: Red Sox 1B Adrian Gonzalez was out of the starting lineup for the first time this season. He struck out as a pinch-hitter the ninth. . Cubs manager Dale Sveum said the team will likely activate C Geovany Soto from the 15-day DL on Monday before the series opener against the White Sox. . C Koyie Hill was released by the Cubs on Sunday after declining an assignment to Triple-A Iowa after clearing waivers. . RHP Matt Garza (2-5, 4.04 ERA) will pitch Monday for the Cubs. ... The Red Sox are off on Monday and Clay Buchholz (7-2, 5.38) will take the hill on Tuesday at home against the Miami Marlins.