Dominant Forest looked all set for their third straight win in the Championship after Greg Halford's first-half header, but Kelly headed home the equaliser to rescue a point for the hosts.
The consolation for Forest was they at least stretched their unbeaten run to seven matches, while the equaliser ended a run of three consecutive defeats for Reading.
Forest lost 3-2 to Reading at the City Ground in late November, but had subsequently embarked on a six-match unbeaten run of three wins and three draws.
Successive victories against QPR and Leeds over the Christmas period cemented their place in the top six.
In stark contrast, Reading's form had dipped dramatically after the success at Forest.
They had lost four of their past five matches and the last three in a row, dropping from fifth to ninth position in the table. A series of injuries to key players had further hampered manager Nigel Adkins' team selection.
Rain lashed down at the Madejski Stadium from the start, making conditions slippery but far from unplayable. It led to a low-key opening, with neither side willing or able to muster anything of note going forward.
Billy Sharp could have done better for Reading, but he allowed Jamaal Lascelles to recover from an error to clear the danger.
Forest awoke and twice Jamie Paterson let fly. First, his well-struck 25-yard shot was deflected behind for a corner. Then he sent in another long-range effort that was comfortably saved by home goalkeeper Alex McCarthy.
As the rain relented, the football began to improve.
Danny Guthrie released Nick Blackman and the winger bemused Eric Lichaj before unleashing an angled drive that sailed narrowly over the Forest crossbar.
Forest replied by going ahead in the 36th minute.
Reid swung over a free-kick from the left and Halford, a former Reading player, rose above a pack of defenders to guide in a looping header. It was his third goal in as many games.
Reading appeared powerless to respond, clearly lacking any confidence after such a poor run, and their disorganisation was again apparent in the second half.
Forest continued to control the flow, with Henri Lansbury and Reid easily winning the midfield battle.
Forest should have increased their lead when Reid chipped a cross into the home area and Halford found himself alone. This time, though, he was wasteful, stooping low to head straight at McCarthy.
Paterson was also denied, by a last-ditch block from Kelly at McCarthy's near post.
The weather deteriorated again, as did Reading's play.
Forest substitute Matt Derbyshire should have wrapped it up but twice shot wide from promising positions.
Forest had to survive a scare near the end when an Alex Pearce header from a Guthrie corner was nodded off the line by Derbyshire, but they could not keep out Kelly's late header from a Royston Drenthe free-kick.