What a sad thread.
You obviously have many problems, and are in a situation which supports wrong behaviours, and makes doing the right thing very hard indeed.
But, you also seem to be taking steps in the right direction. If you carry on with this new way you are going, and if you can be honest with yourself about the addictions, and about the reality of your little boys life, then maybe, just maybe they will be a happy ending.
It's a hard road to travel. But worth it for you and your son.
Please work with children's services. You may want to pretend otherwise, but I suspect your ability to be a mother to your child is something that is in question. If you are honest about wanting to put your little boy first, you need to be listening very hard to what children's services are telling you. You will need to be making substantial changes and showing them that you are capable of making those changes permanent.
People lose their children by ignoring what they are told, making excuses of trying to talk their way out of being responsible for doing something wrong, or making excuse after excuse about why they haven't managed to change. Excuses and shifting sands of tall tales and complicated stories may sound very plausible to an addict when drunk or stoned. But social services are stone cold sober and see the excuses for what they are: lies. And people who can't tell the truth even when it matters so much, well, they aren't people to be trusted. And that will be a massive problem for you.
Social services will have heard it all before, and will be looking at your child's needs and timelines, not yours.
Sorry if this sounds harsh. Some of the posts on here have been extremely rude and verging on bullying. Although support doesn't have to be nicey nice, with some of these posts, I don't think support was the intention. However you haven't done yourself any favours either. Anyway, I'm trying to be supportive, and truthful.
Good luck.