Goals from Mario Pasalic and Robin Gosens early in the second half broke Napoli's resistance at an all-but empty Gewiss Stadium and put Atalanta on 60 points in fourth place, and the final Champions League spot, with nine matches remaining.
Gian Piero Gasperini's side, now unbeaten in nine in the league, are 15 points ahead of sixth-place Napoli and 12 in front of Roma, who slumped to a shock 2-0 defeat to lowly Udinese after having to play most of their match at the Stadio Olimpico in Rome with 10 men.
"It's a shame that the fans aren't here to see this," said Gasperini, after another good performance behind closed doors.
"It's really sad because I can imagine what kind of atmosphere there would have been for the match today."
Napoli sit in the last Europa League spot and are now looking over their shoulders at AC Milan and Hellas Verona after their five-match winning league run was brought to an end in Bergamo.
Milan are two points behind Gennaro Gattuso's team after their last-gasp draw with struggling SPAL on Wednesday while Verona's 3-2 home success over Parma means they are just a further point back.
Expected to be an end-to-end affair between two of Serie A's in-form teams, the opening period was an surprisingly drab affair.
The most noteworthy moment of a cagey first half was when Napoli goalkeeper David Ospina had to be stretchered off with his head bandaged after he collided with Atalanta defender Mattia Caldara.
Napoli had comfortably kept at bay an Atalanta side without Josip Ilicic, only to then give up two sloppy goals in the early minutes of the second half to effectively end their chances of a result.
- Gattuso 'really angry' -
Ilicic's replacement Pasalic gave the hosts the lead in the 47th minute when he ghosted in completely unmarked to nod home Alejandro Gomez's cross.
Seven minutes later Gosens made it two when he collected Rafael Toloi's mishit shot and -- again unmarked -- took his time to lash home his finish.
After that the hosts sat back and absorbed weak pressure from Napoli, whose best chance to get back into the game was wasted when Fabian Ruiz shot wide with the goal at his mercy with 20 minutes left.
"I'm really angry after a performance like that: Atalanta did very little today -- we were in control of the match," said Gattuso.
"I can't remember an Atalanta shot. This is a team that hammers its opponents, scores five and six against everyone. We threw this match away."
Roma effectively kissed goodbye their chances of making the Champions League after another dismal display against Udinese following their limp loss at Milan on Sunday.
Faced with financial problems and with fan discontent at the club's American ownership close to bubbling over, another season outside Europe's top club competition would be a big blow to the capital club.
Kevin Lasagna's 12th-minute strike from close range and another tap-in from Ilija Nestorovski 12 minutes from time gave Udinese their first league win since mid-January and moved them up to 14th on 31 points, six above the drop zone.
If anything the away side should have made more of the one-man advantage after Diego Perotti received a straight red card for a clumsy challenge on Rodrigo Becao, wasting a host of chances on the break before Nestorovski sealed the points.
Roma travel to Napoli on Sunday with their qualification for the Europa League far from secure with Milan and Verona also snapping at their heels.