I wrote this until you put that your son is not his biological child. If you have no children with this person you can and should walk out. Please look up The Freedom Programme and realise you are being used by a habitual waster. This is not a unique situation, this is textbook and your child deserves better.
Well if you had no child I'd just say leave. I've actually been in this exact situation with my ex. When we got together he came out with lines such as ‘a woman never puts her hand in her pocket’ which at the time I found ridiculous and so I insisted on paying my way. Well, he seemed to take this as a meal ticket and proceeded to use me for the next seven years, spending all my money, keeping his benefit money to himself though. He would not apply for jobs and increasingly went out getting drunk.
This is typical behaviour for some people. He won't stop this no matter how much you nag.
I tried to speak to my ex, and told him straight I'm not your parent or your provider, you are meant to be our provider, provide for your family. Still though they won't take heed because they know that you won't leave. And if you do leave they'll just use contact with the child to get at you for the rest of your life.
What about simply ceasing funding him? You say he can't work, well I would bet he can but won't, is it a mental issue? (it's depression isn't it?) and anxiety? Mine had that. It's utter bullshit though if he can go to bootcamp isn't it?
Put all your money towards bills and the child and stop funding anything leisurely for him. Ignore his tantrums, let him leave you or should he see fit to physically abuse you over it call the police there and then and get a non-molestation order straight away.