Mario Mandzukic's commanding header, his eighth league goal of the campaign, gave Juve a deserved half-time lead and they were rarely troubled in restoring an eight-point gap to second-placed Napoli, who earlier beat SPAL 1-0.
Robin Olsen's string of stellar saves ultimately achieved little more than keeping the score down as the under-pressure Di Francesco was left to defend a run of just one victory in seven competitive matches.
Roma encountered intense early pressure and only an in-form Olsen prevented them from slipping to an earlier deficit.
The Sweden goalkeeper brilliantly denied Alex Sandro in the seventh minute and was at his athletic best in turning a Cristiano Ronaldo shot around the upright.
His saves only prolonged the inevitable as Juve's opener arrived in the 35th minute, Mandzukic towering above Davide Santon and heading in Mattia De Sciglio's cross.
Ronaldo must have felt a sense of deja vu when Olsen frustrated him with two fine saves in quick succession prior to the hour, causing the Portugal attacker to kick out at the post in irritation.
Massimiliano Allegri's men twice had late goals disallowed on their way to sealing a record 16th victory in 17 Serie A fixtures. Giorgio Chiellini was adjudged to have fouled the Giallorossi goalkeeper, before substitute Douglas Costa's stoppage-time strike was overturned on VAR due to Blaise Matuidi's crude challenge on Nicolo Zaniolo in the build-up.
What does it mean? Di Francesco in danger
The goodwill Roma boss Di Francesco built up during an excellent 2017-18 campaign could soon evaporate if results do not turn.
There are just two points separating his team and 12th-placed Parma after 17 matches, with considerable January investment seemingly the only antidote to a sub-par run of results.
Brilliant Bentancur makes seamless comeback
Rodrigo Bentancur returned to Juve's starting XI following a one-match suspension and got straight back to dominating the midfield.
Though still only 21, the midfielder is a key cog for Allegri and demonstrated as such by topping the match count for tackles while rarely wasting possession.
Santon switches off
Granted, there was a mismatch in size at the far post, but Roma needed right-back Santon to be more than a mere step ladder for Mandzukic's opener.
The former Newcastle United defender paid the price for not assessing his surroundings and his regular turnovers impeded Roma's attempts to rescue a result.
Key Opta Facts
- Juventus have gained 49 points in the first 17 games of the season - a joint-record in the top five European leagues.
- Juve have also won 31 league games in 2018, more than any other team in the top five European leagues.
- Ronaldo was responsible for 10 of his team's 20 shots in this game.