Grant Holt netted just after half-time to put Forest back above the Iron, who were denied a win over Oldham when Gary McDonald got a stoppage-time leveller for the Latics.
Oldham remain third, but Bristol City moved level with them after coming from two goals down to beat play-off chasing Tranmere 3-2 at Ashton Gate.
An own goal from former Iron defender Jamie McCombe, coupled with a strike from Paul McLaren, looked to have set Tranmere up for a vital win.
But Enoch Showunmi, Phil Jevons and substitute Jennison Myrie-Williams struck within the first 23 minutes of the second-half to turn the game on its head.
Swansea's hopes of claiming a top six finish were hit by a draw at Bradford City.
Kristian O'Leary, who was later sent off for violent conduct, and Adebayo Akinfenwa scored for the Welsh side with Dean Windass getting both Bradford's goals.
Doncaster's new stadium seems to be bringing them plenty of good fortune, as late goals from Jason Price and Brian Stock earned them a win over Gillingham.
Relegation-threatened Brentford and Leyton Orient played out a 2-2 stalemate at Griffin Park.
The big benefactors at the bottom of the table were Millwall, Darren Byfield's goal sealed a 1-0 win over Brighton to move them away from the drop zone.
Cheltenham, who host Scunthorpe on Tuesday night, lost 2-0 at Huddersfield.
Rotherham also slipped further from safety as Caleb Folan's strike earned Chesterfield a win at Millmoor.
Andy Morrell and David Fox were on the target for Blackpool in their 2-1 win over Port Vale.
Crewe eased to a 2-0 win over Bournemouth, while Northampton survived a late Carlisle onslaught to secure a 3-2 win over the Cumbrians.