One of the things I was taught to do in CBT was to challenge negative thoughts about myself and it helped a lot, although it does take a bit of practice.
For example if I thought 'I'm a ugly fat pig' I'd have to stop and challenge that by thinking something like 'well, okay yes, you might have put on a bit of weight, but come off it, you're not exactly ugly, in fact, you've got a lovely smile' and so on. Or 'I can't believe I just did that, I'm so stupid, people must think I'm ridiculous' I'd stop and think 'okay, I made a mistake, that's okay I'm allowed to make a mistake, it doesn't mean I'm stupid, after all, I did this good thing or that good thing' Is any of this making sense?
It takes a while but it's really helpful if you can challenge the negative thoughts you have about yourself like this because eventually your self esteem does start to improve.
I'm not sure I could have done it on my own though, could you perhaps speak to your GP about organising some CBT, I think most surgeries are able to offer it now and it's the most useful thing I've ever done.
Try not to be so hard on yourself Ella, you sound lovely and I'm sure you've got a whole load of wonderful qualities that it's all to easy to dismiss when you're feeling so down on yourself.
Take care.