Napoli player Maggio celebrates after scoring against Inter
Inter midfielder Joel Obi picked up his second yellow card for a foul on Christian Maggio in the 41st minute that resulted in a Napoli penalty, although replays showed that he pushed Maggio outside the area - and Obi's first booking was also questionable.
Inter goalkeeper Julio Cesar blocked Marek Hamsik's ensuing penalty but Napoli defender Hugo Campagnaro - who clearly was inside the area before Hamsik's kick - scored from the rebound.
The half ended amid fierce protests and new Inter manager Claudio Ranieri was ejected during the break.
Despite being a man down, Inter threatened for an equalizer early in the second half before Maggio doubled Napoli's lead in the 56th when he beat Japan fullback Yuto Nagatomo to lift the ball over Julio Cesar.
Hamsik then added another score for Napoli in the 75th, beating Inter's offside trap.
Ranieri called referee Gianluca Rocchi's handling of the match "inadequate." "He ruined a great game," Ranieri said. "It's too bad." Napoli also scored three goals in a win over AC Milan a few weeks ago, as the southern club attempts to win the Italian league for the first time since Diego Maradona led Napoli to titles in 1987 and 1990.
Napoli hadn't beaten Inter in Milan since 1994.
"We're gaining confidence," said Napoli forward Ezequiel Lavezzi.
Napoli, which has also gone unbeaten in its opening two Champions League matches, has 10 points, two more than Juventus, Udinese and Roma. Inter, which struggled at the start of the season before Gian Piero Gasperini was fired, is six points back.
Earlier, Roma finally found its footing under new coach Luis Enrique in a 3-1 win over an Atalanta squad that would be level with Napoli if it hadn't begun the season with a six-point penalty from the latest match-fixing scandal, which also resulted in a 3½-year ban for its captain Cristiano Doni.
Juventus hosts AC Milan on Sunday and Udinese plays Bologna.
Also Sunday, it's: Novara vs. Catania; Cesena vs. Chievo Verona; Fiorentina vs. Lazio; Lecce vs. Cagliari; Palermo vs. Siena; and Parma vs. Genoa.
At the Stadio Olimpico, newly signed Roma forwards Bojan Krkic and Pablo Osvaldo scored in the 20th and 31st minutes and surprise starter Fabio Simplicio sealed the match in the 81st after German Denis had pulled one back for Atalanta in the 48th.
Eliminated from the Europa League by Slovan Bratislava to open the season, and then winless in its first three Serie A matches, Roma has now won two straight although it narrowly edged Parma 1-0 last week.
"This is the football that I want - with ball possession leading to shots and offensive action," Enrique said.
With Boston executive Thomas DiBenedetto on hand for his first match since being named Roma president, Luis Enrique showed that his plans for an attacking squad along the lines of Barcelona - with constantly changing lineups - might have more potential than many critics first thought.
The hosts took control when Bojan collected a pass from Daniele De Rossi and found the target with an angled shot.
Osvaldo then scored for the third straight game by dribbling past the goalkeeper and kicking into an empty net. Roma captain Francesco Totti - who turned 35 this week - hit the post directly with a corner just before halftime.
At the start of the second half, Argentine striker Denis tied Genoa's Rodrigo Palacio for the league scoring lead with his fourth goal this season by connecting on a header following a corner.
After a tense stretch that could have resulted in an Atalanta equalizer, Simplicio took a pass from another new signing, Miralem Pjanic, and scored with a delicate shot.
Roma's next match is a derby with Lazio on Oct. 16.