The 39-year-old powered a bullet header into the bottom corner in the first half before bundling in his second of the night after the break to take his league-high tally to 10 goals in six games this season.
Dries Mertens pulled one back for the home side to give them hope, but a clumsy challenge by Tiemoue Bakayoko earned the Napoli midfielder a second yellow card with 25 minutes left on the clock and Jens Petter Hauge eventually notched Milan’s third in stoppage time.
Ibrahimovic was forced off with a muscle problem with 11 minutes remaining, and the Swede was pictured sitting on the bench with an ice pack strapped to the back of his left leg.
Milan assistant coach Daniele Bonera, who stepped in for head coach Stefano Pioli after he tested positive for COVID-19, was unable to shed any light about the severity of the injury.
“I don’t have much information, he had ice on his thigh and we’ll see in the next few days what the tests say. He isn’t someone who usually comes off the pitch,” Bonera told Sky Sport.
Jurgen Klinsmann reacts to Milan’s 3-1 win at Napoli, which sends the Rossoneri back to the top of Serie A.
The result means unbeaten Milan retain top spot on 20 points, two clear of Sassuolo in second and six ahead of sixth-placed Napoli.
It also ended an 11-match winless league run for the Rossoneri in this fixture and marked only their second Serie A victory away to Napoli in the 21st century, the other a 2-1 win in October 2010 in which Ibrahimovic also scored during his first spell at the club.
Milan’s unbeaten run of league form is now 20 games long and stretches back to March, but Bonera refused to be drawn on the possibility of clinching the club’s first Serie A title since 2011 this season.
“We want to stay high up the table but after eight rounds it’s too soon to get carried away,” he said.
“There are teams that have invested more than us and that were built to win the league. We weren’t built to win straight away, but we’re growing game after game.”