Andy Johnson's penalty 11 minutes from time briefly looked like inflicting a rare defeat on the runaway leaders.
But the home side led for less than two minutes as Harper fired home after Leroy Lita's delicate touch.
Reading keeper Marcus Hahnemann then saved brilliantly from Johnson and Tom Soares as Palace looked for a winner.
Reading manager Steve Coppell:
"On a number of occasions this season, we have been in a tight corner and have got something out of it.
"I thought we'd get an opportunity, but to score straight away - and in the manner we did - I can only compliment the players on a terrific response.
"We were conscious they could hurt us and the back four - or five with keeper Marcus Hahnemann - were brilliant."
Crystal Palace: Kiraly, Ward, Hudson, Fitz Hall, Boyce, Soares, Hughes, Watson, McAnuff, Johnson, Macken.
Subs Not Used: Freedman, Morrison, Leigertwood, Andrews, Speroni.
Booked: Hughes, Johnson.
Goals: Johnson 79 pen.
Reading: Hahnemann, Murty, Sonko, Ingimarsson, Shorey, Little, Sidwell, Harper, Convey, Kitson (Lita 64), Doyle.
Subs Not Used: Gunnarsson, Hunt, Oster, Stack.
Goals: Harper 81.
Att: 19,888
Ref: T Kettle (Berkshire).