I can really feel your pain! You obviously really cherish your little guy and I can't imagine facing the decision that you are.
I also agree you have to be the one to make the decision...I don't think it is selfish of you to keep your baby, while you work hard at your career and education. Crazy as it sounds, as mentioned above, maybe a little playmate would be good for him?
If you feel you have to give him up, I don't think your demands are unreasonable at all!
I am thinking he can sense you are upset this morning

....I personally would keep him and make it work somehow.
Sounds like you already have offers of fostering him and giving him back to you, which is awesome! Hopefully someone near you will be able to do this IF this is your decision. I also agree, everything in writing! Even who will cover medical costs while in someone elses care. And if its a forever home, they should assure you that if anything comes up where they find they cannot keep your little guy, they will get him back to you!
Good luck with everything!