Stephan El Shaarawy, the scorer of the early opener, added a second for the hosts nine minutes before half-time, and Diego Perotti sealed the victory for the Italians with a low drive after the break.
The Blues performed well for the majority of the first half but failed to make the most of the opportunities when they came our way.
Eden Hazard, Alvaro Morata, Marcos Alonso and Tiemoue Bakayoko all went close, but Roma were far more clinical in front of goal and the result means they move into top spot in the group with two matches left to play.
There was only one change to the side which started at Bournemouth on Saturday, with Gary Cahill coming in at the expense of Davide Zappacosta.
Toni Rudiger, returning to the Stadio Olimpico, retained his place in the side and there was a 50th Chelsea appearance for Alonso.
With N’Golo Kante once again not involved, Cesc Fabregas and Bakayoko partnered each other in midfield, while Morata started at a ground on which he scored the winning goal for Juventus in the 2016 Italian Cup final.
There was a fantastic atmosphere inside the stadium in the build-up to kick-off, with those Chelsea fans who had made the journey doing their best to make themselves heard despite being hugely outnumbered by their Roma counterparts.
The Blues threatened immediately as Bakayoko burst from deep and fed Pedro to his right, but the Spaniard’s first touch was a heavy one and Alisson gathered.
Before anybody inside the stadium had been able to gather their thoughts, however, we fell behind as Roma scored after just 38 seconds.
Aleksandar Kolarov picked out the run of Edin Dzeko, but as the striker attempted to get his head on the ball, it bounced off his face and sat up invitingly for El Shaarawy, whose first-time half-volley flew past Thibaut Courtois into the top corner.
Alonso led the protests with the Chelsea players believing the ball had struck Dzeko’s hand, but replays proved the referee had made the correct call.
It was a positive response and we should have been back on level terms within three minutes when Fabregas released Hazard with a trademark pass over the top. The Belgian, who was on to it quickly, looked set to score from a similar position to which he notched the winner at the weekend but, under pressure from the retreating Alessandro Florenzi, his strike was pushed away by Alisson.
Despite the early setback, it had been a bright opening by Conte’s team, and after 20 minutes Hazard forced Alisson into another save low down after producing a lovely piece of skill to get away from his marker.
Tactically, it was Cahill, rather than Rudiger, who started on the right-hand side of the back three, and when the Italians were in possession Pedro tucked in alongside Fabregas and Bakayoko to bolster the midfield area.
Chances continued to come our way with Hazard, who was looking threatening every time he picked up possession, testing Alisson once again after spinning away from his man, before Morata passed up an even better opportunity, firing over from close range after a clearance had rebounded into his path off Pedro.
Florenzi was fortunate to escape punishment after raking his foot down the back of Hazard’s heel as the attacker, who wasn’t even awarded a free-kick, burst towards the penalty area, and as the half-hour mark ticked by there was no doubt we had been the better side up until that point. Crucially, though, it was the hosts who were 1-0 up.
From an attacking perspective, Roma had offered little since taking the lead, but 10 minutes before the break Courtois saved brilliantly to deny El Shaarawy who had been played through by Dzeko after the ball had got away from David Luiz.
A minute later, however, El Shaarawy made no mistake when Rudiger allowed a Radja Nainggolan ball from out wide to run beyond him. The forward, who was racing in behind, got to the loose ball ahead of Azpilicueta and poked it into the back of the net.
It was a goal which came completely against the run of play, and one which made our task all the more difficult.
Just before the break, Alonso went close to reducing the deficit when his right-footed curler was tipped behind by Alisson, and from the resulting corner, Bakayoko headed wide from a wonderful position.
The first opportunity of the second half went Roma’s way as Dzeko blasted over from a tight angle, and within 10 minutes of the restart, Conte made his first change with Willian coming on for Cahill.
It was a positive switch which meant Pedro moved to right wing-back and Azpilicueta shifted into the back three.
Morata dragged a strike from outside the box agonisingly wide as we attempted to find a route back into the game, and it was becoming increasingly clear the next goal would be vital.
Unfortunately, it was scored by Roma shortly after the hour as Kolarov pounced on a loose ball and played it inside to Perotti. The Argentine drove at the Chelsea defenders, who backed off, before drilling a powerful low drive beyond Courtois and into the bottom corner.
Perotti should have scored his second, and really put the game beyond doubt, moments later when he was teed up by Dzeko. With only Courtois to beat, he opted to take it the first time and blasted his strike over the bar.
Danny Drinkwater replaced Fabregas with 20 minutes left to play and soon after Conte made his final switch by bringing on Michy Batshuayi for Morata.
Courtois produced a stunning save from point-blank range to thwart Roma sub Kostas Manolas, and while the Blues enjoyed plenty of possession in the attacking third late on we were unable to find the killer pass or moment of magic, to really test the Italians.
With two matches left to play in the group stages of the competition, we remain well placed to qualify for the knockout rounds. The first of those is away at Qarabag, with a home game against Atletico Madrid to follow.
For now, attention turns towards the Premier League and the visit of Manchester United to Stamford Bridge on Sunday.