Atalanta raced to a two-goal lead before being pegged back to 2-2 by halftime but then scored three more in a devastating 15-minute spell early in the second half and added another two late in the game for good measure.
Lecce's Giulio Donati scored at both ends.
Serie A's leading scorers took their tally to 70 goals in 25 games as they stayed fourth in the table, and in the Champions League spots, with 48 points.
The match was one of only five played in Serie A this weekend -- and two on Sunday -- due to the coronavirus outbreak. The other five matches, in the regions where the government has banned sporting events, were postponed.
Atalanta fans were screened for symptoms of the disease as they entered the stadium.
Diego Simeone ready to tempt Chelsea star to Atletico – Euro Papers
Atlanta went ahead when Lecce's Donati headed a corner into his own net in the 17th minute and Zapata headed the second goal from another corner five minutes later.
Riccardo Saponara pulled one back with a curling effort in the 29th minute and Donati equalised five minutes before the break, making amends for his earlier blunder.
Josip Ilicic put Atalanta back in front two minutes after the break then set up two goals in quick succession for Zapata, leaving the Colombian with a simple finish each time.
Luis Muriel and Ruslan Malinovskyi added two more in the last five minutes.