The home side did almost all of the attacking from start to finish, but their inability to break down a well-drilled Chievo was punished when Thereau scored on the break in the last minute.
The win lifts Chievo to safety but leaves Roma's fifth position under threat from Udinese and Lazio, who can go above them into the final Europa League qualification berth with a win tomorrow night.
Roma needed a bit of time to get warmed up with full-back Dodo causing the first minor moments of danger before Pablo Osvaldo diverted Ivan Piris' low cross goalwards, but Christian Puggioni was alert to the danger and made the save.
Dodo continued to pose a threat when he pushed forwards down the left wing, using the chance to play in the absence of the suspended Federico Balzaretti.
Chievo were otherwise well organised in defence, letting Roma approach the final third, but then sending them away with authority.
It was the same story in the second half with Roma slowly building up more momentum and committing more men forward.
Francesco Totti's shot took a wicked deflection off Boukary Drame to hit the top of the crossbar and, from the resulting corner, Mattia Desto's header from point-blank range was turned away instinctively by Puggioni.
Dodo had Roma's next chance when he found his way into the area after exchanging passes with Destro, but he took one touch too much and a defender slid in to make a block.
Roma kept pushing for a winner with four strikers on the field to end the game with Erik Lamela sent on, but they were caught out on the counter-attack as Chievo snatched a last-gasp winner.
Drame raced down the left and sent the ball into the centre for Thereau, who scored on the volley to silence the Stadio Olimpico.