I think we've all had times when life is just piling on one shitty situation after another. Of course, you're angry! Don't beat yourself up about that.
Time to start breaking this down and exploring solutions. I don't know the details of your work but if there anything you can do to make it better? Why is it taking over your life? Can you change/mitigate this? Speak to the boss? Does the lazy coworker directly affect you or can you leave them in their own mess?
Maybe you could tell us more about the work situation but you can start taking your breaks, time off you are entitled to, don't work more than absolutely necessary and never martyr yourself, particularly for the coworker. You have rights.
While you try and make things better at work, start exploring better jobs. I know it's not easy out there, but just the act of trying to change things can give you some power and direct your anger.
Regarding your relationship, is the long distance thing going to go on indefinitely or is there an end in sight?
In general, have you anything to look forward to, however small? You need something to let off steam. Work it out in the gym and get fit out of it! Socialise with friends and have some laughs.
Also, explore meditation or yoga or therapy to relax and redirect your thoughts. Try only to think about your job while you are at your job and nowhere else. Don't let it take over your headspace 24/7.
I know all this is easy to say and hard to do, but I think you may find a way to make things better.