Hi J.,
I know all kids are different and some require more sleep than others. Also, some like to sleep more than others! That said, I'm thinking maybe his two 3-hr naps are possibly rendering him NOT sleepy by 8:00. Only you can judge this based on his behavior, crankiness, etc.
I remember that by that age, my son had dropped O. of his naps so he had O. nap per day. And at 3, the naps were but a faint, sweet memory!
Also, try not to let him nap too close to dinnertime. If you don't want to outright "wake him up" after about 90 minutes, just do things to let your presence in the house be known, by making some subtle noise (vacuum, put clothes away, etc.).
You might find that with O. nap per day (and it can still be a fairly long O. as long as it doesn't go past 3 or 4, he may be drowsier by his bedtime.
Does he have a cool night light? Maybe get him a push-light that he could turn on and off by himself. You could also play a soft, relaxing CD in his room so he has something to do before he conks out.
I agree, once you start letting him sleep in your bed, it will be hard to put a stop to it. At this point, he is really training YOU, and you need to turn the table back. You can go in and comfort him if he is upset but try not to talk too much or pick him up. Just say "time to sleep", etc. Keep it very brief.
Also, does he have a snack before bed? My son seems to sleep better when he has O..
Hope some of this helps. Good luck!