NO NO NO, you shouldn't have stayed with him for any reason. You are not the only wife whose husband is a liar and a cheat and a scoundrel. You also aren't the only wife whose husband's family turns against her. It doesn't make it feel any less awful that you aren't the only one, but the point is, that's what people like your husband do. And ANY spouse who does this is showing you that he would NEVER be good to you if you had stayed.
Please go to a lawyer NOW and tell ALL. You need to do this so that you and your children are protected. You need to know the law and what will happen if he is caught with drugs. You also need to get a legal separation from him so that he can't borrow money and YOU owe part of it. That happened to a friend of mine. It took her years to pay off $5000 of HIS debt that he took out right before he left her.
Don't just feel sorry for yourself and do nothing. You just have to get to work on dissolving this marriage and looking forward. If you can't do it for your own sake alone, do it for your children. You CANNOT have a spouse who does any of the things he does, much less all of them. You could be arrested for allowing a man doing drugs in your home with your children there, and social services could take those kids away from you.
I promise you that after you have cut him out of your life, he will end up showing everyone what he really is, and they will shut up about you. Ask your lawyer what to say to people who ask you about what this jerk says about you. That will help you too.