You are an amazing person. Remember that, and remind yourself of that whenever you have doubts. You have already achieved a lot, and you will be achieving even more once you have finished your studies.
There are a few things you can do. The first is to look at your life from a different point of view.
You are studying psychology. You are getting a lot of book learning, and your life provides for the rest of the learning. You should start to see your life as part of your psychology training - and that should give you an advantage over the other students who have never faced the challenges you have already overcome. Rather than resent your life, look at the positive things that you have already created, and give yourself credit for being an achiever. You don't need to get top academic marks to be an achiever - and the more you learn about psychology, the more you will
The second thing you can do is protect yourself against the negativity of your family. You are dependent on them, but that does not mean they can do what they want with you or that you have to follow the same life paths that they have chosen. You can protect yourself against the energy coming from them by imagining that you are in a cocoon that protects you and your son.
Emotionally, you can choose who you allow into that cocoon. This may be something that you have never done before, but believe me - once you have that cocoon in place you will feel much stronger and secure. This will also result in your son feeling stronger.
Here is how you do this: find a quiet place, and take a few deep breaths. Then imagine that you build this cocoon around yourself and your son.
Ensure that you imagine a comfortable cocoon with enough space for the two of you, and a door which will allow you to let people in that you want to let in. Everyone else stays outside of that cocoon. Whenever you know you will have contact with family members that you don't want inside the cocoon, remind yourself that the door is closed for them, and that they cannot get in, no matter how hard they try.
I would also recommend that you stop hating your family. There is a good reason for that - and it has nothing to do with me giving you a sermon.
Hate is a poison that you drink and then you wait for someone else to get sick. You can hate your family and what they do as much as you want, but you would probably agree that they don't care - they will not change their behaviour towards you purely because you hate them. Then how do you get rid of the hate? Compare your life and your achievements to what they have achieved in their lives. Ask yourself how much you would have achieved if they did not in their own way challenge you the way they always do. If they were angels, you would not have had an incentive to become the achiever you are at the moment. Therefore- in their own way they are bringing out the best in you - at a price to themselves which is far bigger than the price you pay.
If you can find a way to not provide support from your tax money to your family, that would be great - rather save your money so that when you have finished your studies, you have some savings that you can apply to the next phase of your life.
And I say this again - you are an amazing person. Don't let anyone tell you the opposite, and if they do, look at what they have done with their lives, and then ask yourself whether you can or should believe what they say about you.