The 2-0 scoreline flattered Coventry, who were firmly second best and could have conceded half a dozen if not for a handful of stunning saves from Republic of Ireland keeper Keiren Westwood.
Seyi Olofinjana’s cool finish was the only breakthrough of a dominant first half for the Bluebirds, who were well and truly back to their best.
And although Coventry put up a fight after the break, it was the inspirational Craig Bellamy who grabbed a deserved goal courtesy of a deflected effort late on.
The hosts started brightly and Chopra drilled narrowly wide before Westwood produced a great reflex save to keep out Chris Riggott’s flick from Peter Whittingham’s set-piece.
And it came as no real surprise when Olofinjana side-footed home, meeting Bellamy’s low cross after he had latched onto a quick free-kick from Andy Keogh to burst past Richard Keogh down the left.
In the second half Coventry came more into it, but it was left for Bellamy to grab the goal he deserved, via a deflection off James McPake, before being denied a quick second by that man Westwood.
The visitors could have no complaints about the result, though, as Cardiff, watched by a sell-out home crowd, claimed their first St Stephen’s Day victory for 11 years.
Reading moved to within a point of the play-off places with a 4-1 win against Bristol City.
Jon Stead gave the visitors the lead early on, but Reading roared back with strikes from Jobi McAnuff, Noel Hunt and a brace from Shane Long.
Reading manager Brian McDermott said: “Shane has been suffering with flu this week and wasn’t able to train until Christmas Eve.
“It wasn’t just the fact that he scored two goals today, it was his all-round performance.
“He has had some criticism from the fans, but he knows I have got 100% trust in him.”
At Oakwell, Burnley came from behind to beat Barnsley 2-1 and ease the pressure on under-fire boss Brian Laws.
Mid-table sides Portsmouth and Millwall played out a 1-1 draw at Fratton Park.
Jimmy Bullard came off the bench to give Hull a dramatic 3-2 win at Yorkshire rivals Sheffield United. In-form Jay Simpson had scored twice to give Hull a 2-0 interval lead, one of his goals coming from the spot, but a double from Ched Evans looked to have earned a point for managerless Blades.
But in the third minute of injury time Simpson set up Bullard to score the winner.