The former Inter man helped his side move within five points of first-place Juventus.
Italy international Mattia Destro gifted the guests the lead around the half-hour mark, before netting a second and third goal after the break to put the match to bed, with Mauricio Pinilla netting the hosts' only goal from the spot.
Both sides struggled to create any noteworthy chances in the opening stages of the match and it took until the 30th minute before Roma first threatened. Maicon caused his opponent all kinds of trouble with his dangerous runs down the right, but Vlada Avramov collected his cross before Destro could get to it.
Destro was not to be denied, though, and did open the scoring minutes later after some good work from Gervinho. The former Arsenal man set up the Italy international after a superb dribble and Destro had no trouble slotting home from close range.
Cagliari felt it should have been awarded a penalty shortly after when Leandro Castan appeared to handle the ball inside his own area, but the referee wanted none of it and waved play on.
Davide Astori nearly restored parity in the closing minutes of the first half after a corner kick, but the defender failed to find the net from inside the area.
The Giallorossi started the second half with attacking intentions and doubled their lead within 10 minutes. Radja Nainggolan found Destro with an intelligent through ball and the striker kept his calm to make it two for Roma.
Rudi Garcia's men continued to dominate proceedings and Destro poured even more salt in Cagliari's wounds in the 73rd minute. Gervinho found Alessandro Florenzi, who sent in a low cross for Destro and the striker beat his marker to the ball with a quick reaction to get his hat trick.
Cagliari pegged one back in the dying minutes of the game when Pinilla converted a spot kick after Mehdi Benatia had fouled the Chilean attacker, but it was too little, too late for the hosts.
Roma continues to sit second in the league table with 76 points from 32 games, trailing first-place Juventus by five points. Cagliari remains 15th in the Serie A table with 32 points from as many games.