Andre Dawson and Jim Wohlford each hit two home runs to back the five-hit pitching of Bryn Smith for host Montreal. It was Philadelphia's fifth straight loss.
Smith (11-11) had four strikeouts and no walks in eight innings. Gary Lucas pitched the ninth.
The home run splurge began when the Phillies' Juan Samuel hit his 11th, leading off the third.
In the Expos' half of the inning, Argenis Salazar and Smith led off with singles. One out later, Wallace Johnson's grounder forced Salazar at third. Trying to complete a double play, third baseman Mike Schmidt pulled Al Oliver off the bag with his throw to first.
Dawson followed by hitting a 1-2 pitch from starter Shane Rawley (8-4) over the left field fence.
Wohlford, ending an 0-for-12 spell, opened the fourth with a homer. Dawson led off the sixth with a homer, marking the 15th time he has homered twice in a game. One out later, Wohlford connected off Rawley for his third of the season, a career high.
Gary Carter made it 7-1 in the seventh when he was hit by reliever Kevin Gross' pitch with the bases loaded. It was the league-leading 100th RBI for Carter.