Congrats on bfing your kids so long. How wonderful for them and for you. Honestly, if you let your dd self wean, I would let your ds, as well. I bfed my first 2 for 9 mos and 12 mos, both self weaned. I bfed my last for 21 mos and I felt forced to wean her. She was having growth issues (opposite as your son! she is almost 4 yo and not as big as your ds yet!) and her ped and nutritionist encouraged me to wean her, saying the Bmilk was getting in the way of her eating/drinking other things, so she was not gaining weight. I feel I was forced to wean her when she was not ready (I wanted her to self wean, as the others did) and it was horrbily hard on both of us. She did not start gaining weight after weaning and I feel she would have self-weaned soon anyways, but it was not her choice, and I felt it wasnt mine. She is still tiny and the Bmilk was NOT in the way. They are only little for a short time, I wish we could get that time back.
As for sleeping with you, both my girls (3 1/2 and 5 yos) sleep with us on and off (still...). You need to decide which you want to get rid of, I would not do both at the same time, that will be very hard on him to lose 2 close times with mom at the same time. I would think about why you want to give up either one. I know how hard it is to not have your body. I went 4 1/2 years in a row with being pregnant or nursing. It was nice to have my body back when I was done, but I knew it was just a part of life, and it would eventually end.
Your kids are only small once and your ds just wants to have that closeness with you. Before you know it, he will be a rebellious teen and you will be lucky if you get 2 words out of him. (yes, I have one of those right now)