L.S.
Totally understand your current practices, but even you know you are lining yourself up for big trouble. I've been a nanny, an aunt of nearly 20 (including siblings' kids and close friends) and of three stepchildren who needed bedtime help. I know this works and it's relatively easy.
Get in a routine, and all will be well after a few horrible nights (or maybe even just one).
1. Put on his pajamas at a certain time each night, and brush teeth. Then read in a room that is NOT the bedroom.
2. At bedtime, say "it's bedtime now." Tuck him in, say "night night," turn out the light and leave the room. Think caring, but businesslike. Don't dwell or be overly affectionate and DONT LAY DOWN WITH HIM. Any of these can send the message that falling asleep alone is hard--even though you are just trying to send love. But he's too young to reason through your guilt and other emotions (sorry :)
3. When he gets up in the night, quickly return him to bed and say "it's bedtime" again. Don't dwell, read, play or anything. If he gets up again, don't say anything. Just put him back in bed.
4. No matter how many times he gets up, do not let him into your bed for even a minute. Don't stray from the simple task of putting him back in bed. Don't reason with him and don't get mad. He's just checking the boundaries.
It may seem at one point that it will never work, but it will! I've done it so many times, and I've also seen The Nanny use the same technique. It always works and life is so much better once it does. Even the child seems happier. They love boundaries!
Good luck and with affections, L.