Hi there!
My daughter just turned 3 and has always had trouble settling herself down at bedtime...she has a developmental disorder, part of which is sensory issues, and I always attributed the restless at nap and bedtime to that...once she fell asleep for her nap she would nap for 2 hours...I think for a long time she needed that long of a nap, but recently she began staying awake longer and not napping until about 3pm..if I let her nap for 2 hours at 3pm she would be up until 10...so what I have discovered is that even though she *could* nap for 2 hours, she really doesn't *need* to..now if she falls asleep around 3pm I wake her up after a half hour...if it is 4 or 5 pm I give her 20 minutes...granted, by 8 pm she is exhausted, but she goes right to sleep without fighting it.
So, from my own experience with this, it sounds like your son really doesn't need that long of a nap anymore because when he does have a long nap he is simply not tired enough to go to sleep at 8 o'clock...I know it's tough to shorten that nap when you yourself are tired, but I think you might find that if you do, he will be tired enough to go sleep at a reasonable hour.
Hope this helps!
~L., mom to 3 year old daughter