After a frustrating first-half performance, in which Lucas Paqueta had a goal ruled out by VAR, Gennaro Gattuso's side put Empoli out of sight with two goals in as many minutes.
Piatek got things started in the 49th minute, netting his seventh Milan goal in just his sixth appearance, moments after Rade Krunic wasted a gilt-edged chance at the other end.
And Empoli's misery was immediately compounded by Franck Kessie's delicate chip, with Samu Castillejo's deft finish adding further gloss as Milan moved to within one point of third-placed Inter.
Paqueta thought he had put Milan ahead with a close-range header 10 minutes in, only for VAR to disallow the goal for offside.
Piatek had a penalty claim dismissed soon after, before Castillejo forced Bartlomiej Dragowski into a pair of fine saves.
Krunic struck wide from inside Milan's area following the restart, but Piatek showed no such profligacy when he tucked home from Hakan Calhanoglu's cut-back two minutes later.
Empoli's hopes of a comeback were all-but ended from Milan's next attack, Castillejo threading a neat pass into Kessie, who dinked a sublime finish over Dragowski.
Castillejo turned from provider to scorer with a sharp prod from Andrea Conti's cross, before substitute Fabio Borini had a late effort harshly cancelled out by VAR as Milan prepared for their Coppa Italia semi-final clash with Lazio in confident fashion.
What does it mean? Milan hitting their stride
Milan are really hitting some form under Gattuso and, while their focus will now switch to the Coppa Italia, third place in Serie A is certainly within their grasp. Inter face Fiorentina on Sunday and a slip-up against the Viola could cost Luciano Spalletti's side dear, with the Milan derby also on the horizon.
Empoli, meanwhile, remain three points above the relegation zone.
Piatek matches Bierhoff
It has been a sensational start to life at San Siro for Piatek, who became the first Milan player to score in each of his first four top-flight starts with the Rossoneri since Oliver Bierhoff in 1998.
Empoli's woeful away form continues
The visitors defended well in the first half but collapsed as soon as Piatek opened the scoring. Giuseppe Iachini's side have yet to win an away game in the league this term and must rely on their home form if they are to avoid relegation.
Key Opta stats
- Before Krzysztof Piatek, the last player to have scored in each of his first four top-flight starts with the Rossoneri was Oliver Bierhoff (September-October 1998).
- Only Lionel Messi (30) has scored more goals than Piatek (26) in the top five European leagues in 2018-19 – all competitions.
- Piatek is only the 10th player to have scored at least four goals in a Serie A campaign with two different clubs.
- AC Milan have kept three clean sheets in a row at home for the first time since May 2014 in Serie A.