Why past events reappear in dreams after a certain delay?
Because memory is consolidated during sleep (and dreaming).
http://learnmem.cshlp.org/content/11/6/671.full
http://psychcentral.com/news/2010/04/26/dreams-are-key-to-memory/13157.html
There are also some psychological benefits from easing painful memories.
http://newscenter.berkeley.edu/2011/11/23/dream-sleep/