I can't speak to your issues as a whole, but one thing that I've found that helps is...when you have a gigantic problem, don't look at it as gigantic. Take on each little aspect of it and when you succeed, you'll start to get confidence.
I don't know how much pain you're going through exactly, but if you feel like you need to see a doctor, go. Don't wait for things to get better. They might not. There might be something wrong.
Approach every day as if the solution to all your problems is out there and you just have to find it. I have personally found that this outlook not only makes me feel more positive, but points my thinking in the right direction (ie, towards a solution).
If you give up, you won't have a chance to make things better. There simply *has* to be a way to solve your problems...you just haven't found it yet.