The Reds created multiple clear chances with experienced striker Lewis Grabban failing to turn the ball home.
Forest will be disappointed with the defeat, having dominated the game in large spells but just unable to make their dominance count.
The win for Swansea closes the gap on second-placed Brentford, with Forest now in 18th and have a five-point gap to the relegation places.
Story of the match
Meanwhile, Forest made three changes with Yuri Ribeiro, Joe Lolley and Lewis Grabban coming in for Gaetan Bong, Luke Freeman and Glenn Murray.
The first real opportunity came for Chris Hughton's side when James Garner slipped a ball through to Grabban who drilled the ball across the six-yard box but Lolley's outstretched effort went wide of the target.
The home side barely created any chances in the first 25 minutes. Credit must be given to Forest for their defensive shape to reduce the threat posed by the in-form Swans.
On the half-hour mark, Ribeiro launched an attack with a great run, he played it out wide to Anthony Knockaert who whipped in a teasing cross but Freddie Woodman managed to keep it out.
Knockaert went inches away from giving Forest the lead on the stroke of half time. His short corner with Cyrus Christie led to the Frenchman curling an effort onto the top of the crossbar.
Steve Cooper would have been disappointed with his side's performance in the first half with the Swans failing to register a single shot on target.
Forest enjoyed a good 10-minute spell at the start of the second half, with Lolley trying his luck from the edge of the box on a couple of occasions, but neither troubled goalkeeper Swansea Woodman.
In a scenario of deja vu, almost identical to the first half, Grabban was played through into the six-yard area but drilled his effort narrowly wide of the far post.
Forest looked certain to take the lead with a three on one counter-attack from a Swansea corner. However, Grabban's poor return pass to Filip Krovinovic ran through to Woodman.
Heartbreak for Forest, as just minutes from time, Swansea took the lead after a looping cross found the late-arriving Roberts who fired his header past the helpless Brice Samba.
Man of the match
Filip Krovinovic - Nottingham Forest
Despite being on the losing side, the Croatian midfielder was at the heart of everything good for the Reds. His defensive performance was impressive too which is something Forest have lacked in recent times.
On another day, Krovinovic could be walking out of this game with a couple of assists, however, it just wasn't meant to be for Hughton and his side.