Gonzalo Higuain and Jose Callejon both scored in the second half either side of Mikel Arteta's sending-off, but Borussia Dortmund's dramatic late 2-1 win in Marseille saw them go through as winners of Group F ahead of Arsenal and pushed Napoli into third place.
The Premier League leaders did just enough in the heated atmosphere of the San Paolo stadium, with Napoli needing to win by three goals to be certain of qualifying, and Arsene Wenger's side can look forward to playing in the Champions League knockout stages for the 14th year in succession.
Napoli, meanwhile, miss out on a place in the last 16 as the losers in a three-way tie at the top of a remarkably competitive group, and will have to settle for the consolation of Europa League football in the New Year.
It was a sore one for Rafael Benitez's side, and another blow for the prestige of Italian football after Juventus were eliminated earlier in the day.
Beaten 2-0 by Arsenal in London in October, Napoli knew that, to be sure of qualification, they had to win by three clear goals, and their task was not helped by the absence of both Slovakian creator Marek Hamsik and goalkeeper Pepe Reina.
Brazilian Rafael Cabral made his Champions League debut in place of Reina, as Napoli, whose recent form has been patchy, looked to keep a clean sheet for the first time in nine outings.
The hosts knew they had to attack and they started with intent. However, their only attempt of any real note in the opening stages was a Goran Pandev shot that was blocked by visiting goalkeeper Wojciech Szczesny.
Callejon curled an effort over the bar before Szczesny was let off the hook when he casually tried to chip clear from a Laurent Koscielny back-pass. Higuain intervened but, luckily for the Pole, he headed wide.
Arsenal sat back and controlled the game well in the opening period, breaking up play and frustrating their hosts.
They only created one chance of note but it was the best one of the first half, Olivier Giroud forcing a good save from Rafael after latching onto Mathieu Flamini's pass inside the area.
Napoli continued to press in the second half but their attacks lacked conviction, with Pablo Armero tearing forward down the left and cutting into the box only to see his shot easily saved.
But their persistence finally brought its reward with 73 minutes played when Higuain scored for the fourth time in this season's competition.
The Argentine exchanged passes with fellow former Real Madrid man Callejon on the edge of the box before turning and shooting low past Szczesny as the San Paolo erupted.
Napoli's hopes were given a further boost three minutes later when Arsenal's skipper for the night Arteta was shown a second yellow card by Hungarian referee Viktor Kassai for catching Callejon.
At that point Napoli were going through but, as the game drifted into the 90th minute, news filtered through that Borussia Dortmund had scored in France, leaving Rafael Benitez's side having to score two more goals to progress.
They got one, substitute Lorenzo Insigne playing in Callejon, who lobbed over the outrushing Szczesny and into the net, but that came with the last kick of the match and Napoli's efforts were ultimately in vain.
Photos: 'Dangal' girls Sanya Malhotra, Fatima Sana Shaikh's dinner outing
Photos: Salman Khan, Daisy Shah spotted at the Mumbai airport
Photos: Rakhi Sawant to play Honeypreet in Ram Rahim biopic
Photos: Arvind Kejriwal asks Kamal Haasan to join politics
Photos: TV actress who played goddesses on the small screen