Forest's fourth win in a row takes them into fifth place in the table, with Steve Cooper hoping that his side can use their two games in hand to firmly cement their place in the top six.
For the Sky Blues, they sit in 12th having won just one of their last eight fixtures.
Story of the match
The opening stages saw the Reds dominate the possession stats, but it was the visitors who had the game's first opportunity.
Callum O’Hare managed to pick out the run of Viktor Gyokeres, who subsequently shifted the ball in between his feet to jink around the challenge of Scott McKenna before he poorly dragged his shot across goal and wide of the far post.
The visitors then had another sight on goal on 16 minutes, but O’Hare’s long-distanced effort was comfortably held at Brice Samba’s midriff.
Forest continued to be the better of the two sides in possession; however, they just lacked that bit of quality to unlock Coventry’s low block.
They did, however, get closer to finding an opener on 20 minutes when Jack Colback found Philip Zinckernagel on the edge of the area. Zinckernagel’s first touch took him past two players before his low shot was blocked by Jake Bidwell, who threw himself in front of the effort.
And their rewards came five minutes later, as Forest took the lead. Keinan Davis held possession on the edge of the area before executing a sublime ball through to Colback, who drilled the ball towards the back post where Johnson’s initial effort was blocked by Bidwell, but the winger managed to lift the rebound over the defender and into the back of the net.
Forest continued to push for a second, and even when they lost the ball in the opposition half, they were relentless in the press to win it back and restrict the Sky Blues to lead going into the break.
The hosts began the second period brightly as they looked to double their lead.
On 54 minutes, Davis managed to shrug off two defenders on the left before the striker bulldozed his way inwards to the edge of the area, but he finished the chance by smashing the ball wide of the target.
Moments later, Coventry had two opportunities to find a leveller. First, Ben Sheaf set his sights on a spectacular equaliser, rifling the ball towards goal from 30 yards that had to be palmed away by Samba. Then, Gyokeres managed to turn past Worrall inside the area before sending a shot wide of the upright from a tight angle.
The home side doubled their lead on the hour mark. Great hold-up play from Davis allowed the forward to create space for the on-rushing Garner before slipping the ball into his path and the on-loan Manchester United man lashed the ball past a hapless Simon Moore.
On 77 minutes, the home side made a double change as Johnson and Davis were both replaced by Sam Surridge and Lewis Grabban, with the latter almost making an instant impact. Grabban received a ball through the line of the defence from Garner, but the forward dragged his shot wide of the near post.
Nottingham Forest: Brice Samba, Djed Spence, Tobias Figueiredo, Joe Worrall (C), Jack Colback, Keinan Davis (Lewis Grabban, 77'), Philip Zinckernagel (Joe Lolley, 58'), Brennan Johnson (Sam Surridge, 77'), Ryan Yates, Scott McKenna, James Garner
Unused Subs: Ethan Horvath, Richie Laryea, Alex Mighten, Cafu
Coventry City: Simon Moore, Michael Rose, Jamie Allen, Callum O’Hare, Ben Sheaf (Fabio Tavares, 66'), Dominic Hyam (C), Viktor Gyokeres, Todd Kane (Ian Maatsen, 66'), Fankaty Dabo, Jake Bidwell, Gustavo Hamer (Ryan Howley, 84')