One goal either side of half-time from the 22-year-old striker guided Massimiliano Allegri's men to an important victory following their Champions League elimination
Mario Balotelli got the hosts off to the perfect start as he converted from the penalty spot after just eight minutes. Signs of a Rosanero fightback in the second half were quelled as Balotelli netted his second and secured all three points in the process.
Palermo were without a win in their previous 14 Serie A fixtures and any hopes of picking up some much-needed points took a severe blow with eight minutes on the clock.
Salvatore Aronica was adjudged to have been too physical with Balotelli inside the area and when the striker dropped to the floor, the referee pointed to the spot. The former Manchester City man took the responsibility on and guided a cool spot-kick into the bottom corner.
With little resistance being offered the Rossoneri were able to coast from then on and it was not until the 24th minute that they threatened again.
A quick break culminated with Kevin-Prince Boateng switching the play to Sulley Muntari and the Ghanaian then picked out Stephan El Shaarawy unmarked in the area. The youngster turned and cut in onto his right foot only to see his shot blocked on its way to goal.
Palermo were not giving the Milan defence much to worry about, but they felt that Cristian Zapata should have been dismissed just after the half-hour mark. A deliberate handball stopped Josip Ilicic from breaking through on goal but the referee only showed the Colombian a yellow card.
The hosts were in control of possession but their lack of a cutting edge almost cost them dearly as Christian Abbiati had to stretch to keep out Michel Morganella's low drive.
Milan remained at a rather tepid tempo in the second half and 10 minutes after the restart Abbiati had to make a great save to keep Paulo Dybala's cross-goal effort out of the goal.
The Rosanero were vastly improved in the second half as their high pressing forced errors from Massimiliano Allegri's men, but the hosts found that all-important second goal to give themselves a cushion and so it came against the run of play after 66 minutes.
M'Baye Niang, who had replaced El Shaarawy, raced to the byline and drilled a low cross in from the left which Aronica diverted back to his own keeper. Having to adjust quickly, Sorrentino could only parry the ball straight into the path of Balotelli who thumped it in from inside the six-yard box.
With a two-goal advantage and Palermo's hopes of stealing a result dashed, Milan ambled to the end of the game in total comfort.
The Rossoneri remain in third position following Napoli's win over Atalanta while Palermo continue to prop up the rest of the table in 20th position.