The 39-year-old Swedish striker fired a shot into the top corner in the first half to reach the landmark, more than 21 years after his first career goal for Swedish club Malmo in 1999.
Ibrahimovic tapped in his 14th goal in 11 league games after the break, and a double from Ante Rebic sealed a comfortable win for Stefano Pioli's side.
"We're thinking one game at a time, today we just needed to win and we did that. We did well in the second half, in the first half we were too slow," Milan captain Alessio Romagnoli told Sky Italia.
Milan moved two points clear of Inter Milan at the top with 49 points from 21 games. Crotone remained bottom with 12 points, four adrift of safety.
"We're thinking about the Champions League as an objective, then at the start of April we will see," Romagnoli added.
Inter's 2-0 win at Fiorentina on Friday lifted them above their city neighbours into first place and ensured there was no room for error from Milan at San Siro.
The hosts were not at their best during an even start to the match, but Ibrahimovic's landmark goal helped settle any nerves.
The Swede exchanged passes with Rafael Leao to find space in the box before guiding an unstoppable finish into the top corner. Milan pulled away after the break as they tore apart the visitors with three goals in six minutes, starting with Ibrahimovic's tap-in from a Theo Hernandez cross.
Elsewhere, a Marco Silvestri own goal and late Gerard Delofeu strike gave Udinese a 2-0 home win over Hellas Verona that took them up to 11th place, six points behind the ninth-placed visitors.