Edinson Cavani scored a brace either side of Mario Balotelli’s first half tap-in to condemn the Blues to a nervy final round of fixtures.
They need to beat Group A winners Bayern Munich at Eastlands on December 7 to stand any chance of progression.
A Napoli win against pointless Villarreal in Spain would mean City’s maiden voyage in the Champions League would end before the knockout phase.
It’s hardly an ideal situation but Mancini was defiant afterwards, refusing to write off City’s qualification hopes despite last night’s reversal.
Mancini said: “We have another game and Villarreal can beat Napoli.
“It is the first time we have played Champions League but I don’t think Villarreal will lose another game, they can win or draw — why not?
“Everything is not finished — never say never.”
Reflecting on last night’s setback, the Italian added: “We didn’t deserve to lose this game, we should think we can score three or four goals every game. We wanted this because that is our mentality.
“We conceded two stupid goals, we know Cavani goes on the first post. Cavani is a good player, a good striker, he scores goals and works for the team.”
City had several chances in an eventful game but Marek Hamsik also hit the post for the hosts, who dominated for long spells.
Cavani, Hamsik and Ezequiel Lavezzi — all of whom have been linked with City — were a handful all night in an imposing atmosphere.
City boss Roberto Mancini started with Edin Dzeko up front alongside Balotelli with Sergio Aguero on the bench.
As is customary, he rotated his full-backs, meaning there was no place for in-form Micah Richards on the right as Pablo Zabaleta came in.
Aleksandar Kolarov and David Silva were the other men to return and both were prominent as City probed.
Their first real opportunity saw Yaya Toure fire over before Balotelli bent a long-range effort wide.
Napoli hit back on the break and went close as Hamsik headed straight at Joe Hart from a Lavezzi cross.
Encouraged, Napoli then took charge with Lavezzi shooting wide after neat interplay with Cavani on the edge of the box.
Hart was then extended as Gokhan Inler forced Hart to palm over from long range but City were undone from the resulting 19th-minute corner.
Cavani met Lavezzi’s set-piece with a glancing header and the ball found a way past Hart at his near post.
It took some time for City to regain a measure of possession after falling behind but one steady move ended with Silva screwing a shot well wide.
City pressed again and levelled after 32 minutes when a poor clearance from Paolo Cannavaro went straight to Silva, who fired straight at Morgan De Sanctis. The keeper parried but only as far as Balotelli, who gratefully tapped in from close range.
Kolarov broke into the area as City threatened a second just before the break but shot straight at De Sanctis.
What had been hard work to get back into the game was undone four minutes into the second half as Napoli regained the lead.
The visitors were caught out down their right as Dossena managed to get behind Zabaleta and pull back for Cavani in front of goal.
The Uruguayan made no mistake as he sidefooted home his second with precision, although Hart could arguably have done better.
Silva tried to stir a response but badly miscued another shot.
Kolarov teed up Balotelli at the end of a good move but the City striker could not make firm contact in front of goal.
City were fortunate not to concede a third when Hamsik weaved his way into the box and struck the base of the post with a powerful shot.
Yet City were not downhearted and Balotelli headed another good chance over from a cross from substitute Samir Nasri.
Silva forced another save from De Sanctis as City pushed for a late equaliser but Napoli held on.
NAPOLI: De Sanctis, Campagnaro, Cannavaro, Aronica, Maggio, Inler (Dzemaili 59), Gargano, Dossena (Fernandez 89), Lavezzi, Hamsik, Cavani (Pandev 83).
MANCHESTER CITY: Hart, Zabaleta (Johnson 85), Kompany, Lescott, Kolarov, Silva, De Jong (Nasri 70), Toure Yaya, Milner, Balotelli, Dzeko (Aguero 81).
Referee: Damir Skomina (Slovenia).