Napoli trail Milan by just three points while Inter are five points back but with a game in hand.
Samuel Eto'o took his tally this season to 27 goals with a brace while Wesley Sneijder, on his first start since December, Thiago Motta and Esteban Cambiasso added the other strikes for the champions.
Brazilian midfielder Simplicio, Montenegro striker Mirko Vucinic and substitute centre-back Simone Loria replied for Roma.
Inter coach Leonardo said the title fight would go all the way.
"All the teams are very close, it will be like this to the end," he said.
"It's not easy, every game is difficult to win for everyone ahead, you saw that today with some surprise results. But we're progressing."
Although 10 points behind Milan, with a game in hand, Roma coach Claudio Ranieri said they would keep going.
"We couldn't have done more than what we did with 10 men against this Inter," he said.
"It's not easy to come back but that's our position, as long as we can see light we must keep going."
The first 45 minutes were pulsating and Inter went ahead on three minutes as Sneijder took a pass inside from Maicon, shifted his feet quickly and sent an unstoppable shot into the top corner before Roma goalkeeper Julio Sergio could even react.
Roma were level on 13 minutes as Vucinic ran at the defence and fed the overlapping Marco Cassetti whose cross was turned in on the slide at the back post by Simplicio.
Just two minutes later Cesar came to Inter's rescue with a triple save.
He beat away Menez's rasping drive, bounced straight up to stop Marco Borriello's headed follow-up and then rushed across his goal to stop Menez's shot with his foot.
Sergio couldn't hold a Sneijder free-kick but neither Andrea Ranocchia nor Motta, both called up to the Italy squad earlier in the day, could turn the rebound home.
Cesar came to the rescue again as Vucinic slipped in Simplicio behind the Inter defence but the goalkeeper got a touch and pushed him wide.
Inter went straight up the other end to take the lead on 35 minutes as Eto'o's shot went through Sergio's fingers.
After the first half fireworks, the second half calmed down until Nicolas Burdisso was sent off after giving away a penalty in tripping Giampaolo Pazzini in the box.
Eto'o stroked home the spot kick to effectively kill the game.
Sergio, who had not covered himself in glory so far, did make a finger tip stop to deny Pazzini on a rapier Inter counter.
But he was powerless to stop Motta's close range header after Eto'o headed a deep Sneijder cross back across goal.
Sergio saved a shot on the turn from substitute Diego Milito before Vucinic inadvertently diverted Daniele De Rossi's free-kick past a wrong-footed Cesar.
And 10 minutes from time Loria prodded home the loose ball after Juan's header had come back off the post.
There was to be no dramatic late equaliser though.
Sergio made a point blank save from Eto'o but in the last minute Inter opened up Roma and Cambiasso slotted home.
Milan took the lead in Genoa through Pato but Antonio Floro Flores struck an equaliser for the hosts.
Milan opened the scoring with a simple goal on 29 minutes as Zlatan Ibrahimovic, on the right side of the area, played a pass between a defender's legs to Pato to tap home from six yards.
Floro Flores was on hand in first-half injury time when an unfortunate deflection off Mathieu Flamini fell to him in the box and he finished crisply into the corner.
Napoli bounced back from their midweek defeat at Chievo with goals from Serie A top scorer Edinson Cavani and Jose Sosa.
Cavani finished off good work from Christian Maggio on 13 minutes with a left-footed finish from close range to score his 18th league goal of the season.
And in stoppage time at the end of the game, Sosa shot home after a cross from Giuseppe Mascara.
What the stars mean:
★ Poor ★ ★ Promising ★★★ Good ★★★★ Very good ★★★★★ Exceptional