Forest went behind shortly after the hour mark when John Duran headed in from John McGinn's cross for Villa.
They were denied the opening goal just moments beforehand when Martinez pulled off an outstanding goal-line save.
However, the Argentine goalkeeper then had a moment to forget as he failed to hold onto Nikola Milenkovic's late header to make it 1-1.
It proved even more costly as Forest won all three points at the City Ground thanks to Anthony Elanga's low finish in stoppage-time.
They have risen to fourth in the Premier League table and a point ahead of City, who play Manchester United on Sunday.
MORE ON THE PREMIER LEAGUE
Mikel Arteta explains Declan Rice and Martin Odegaard substitutions in Everton stalemate
Furious Wolves star carried off pitch by teammate in ugly full-time scenes
Forest, who beat United 3-2 at Old Trafford last weekend, have won three of their last four league matches.
Victory is their eighth overall for the season and means they sit only two points behind Arsenal.
Forest have only scored 21 goals and conceded 19 but that hasn't stopped them from breaking into the top four.
It's a testament to the work of Santo, who is in his first full campaign as boss since he replaced Steve Cooper last December.
Most read in Football
'We've got to look at it' - Red-faced Luton star shoved off pitch by furious teammate
PUMA have perfect response to Cucurella binning boots after slip
Furious Wolves star carried off pitch by teammate in ugly full-time scenes
Chelsea get early Christmas present and take huge title stride without playing
City will overtake them with at least a draw against United due to their superior goal difference.
However, Forest will not end the weekend lower than fifth in the Premier League thanks to Saturday evening's result.
Villa on the other hand are two points adrift of the top five having lost their fifth match of the season.
Victories over Brentford, Southampton and RB Leipzig saw them recover from a winless run of eight matches in all competitions.
However, Unai Emery and co. have been beaten yet again as they failed to hold onto their lead away from home.
They could drop down to eighth by Monday evening if Brighton beat Crystal Palace and Bournemouth win at home to West Ham.