CHICAGO _ Javier Baez proved Wednesday night he can swing hard despite coping with a right heel bruise.
Anthony Rizzo showed he can hit for power against left-handers.
And Albert Almora Jr. displayed his ability to drive in runs from the bottom part of the batting order.
Those three developments allowed the Cubs to overcome a three-run deficit and pull away to an 8-4 victory over the Phillies before a crowd of 39,246 at warm Wrigley Field.
Baez, making his first start since Sunday when he injured his foot while charging a grounder, blasted a 1-2 pitch from Enyel De Los Santos into the center-field seats for his 12th home run of the season in the seventh.
Baez, who walked and struck out twice in his three previous plate appearances, pumped his right fist twice before running the bases without a limp.
Left-hander Cole Hamels experienced one of his rougher outings as he allowed three runs in the first three innings and was tagged for nine hits in a season-low four innings and 99 pitches. But he was taken off the hook when Rizzo launched a three-run home run off rookie left-hander Cole Irwin in the third that hit the Budweiser sign on top of the right-field video board and traveled an estimated 437 feet.
Rizzo and Baez are tied for the team lead with 12 home runs.
But the biggest hit of the game came from Almora with two out in the fifth when he smacked Irwin's first pitch over the center-field wall to snap a 3-3 tie.
It was the first grand slam for Almora, who obliged fans with a curtain call.
Tyler Chatwood relieved Hamels and pitched four-plus innings of three-hit ball.
The Cubs (29-18) maintained their two-game lead over the Brewers in the National League Central.