Problems! Advice?

Okay so my boyfriend, doesn’t talk to any of his family. Except for his uncle and his uncles ex wife. He works for them and they are super mean to him, take advantage of him and really underpay him. But he won’t quit because he doesn’t want to make them mad but we are struggling. He has told me 3 different times this week that he’s almost just told them that he was done and quitting but he chickens out because he doesn’t want to let them down.

Beside from work, he always makes plans with me or promises me he’s going to do something and something with his uncle always comes up and he can’t tell him no so he cancels on me or leaves me hanging. Like tonight, he usually gets home from work around 2am sometimes 4 if they’re busy. But he texted me and said he would be home at 2. So I went to bed early to be able to get up when he got home so I can spend some time with him. We live together but hardly see each other because our schedules are so different. 2:30 rolls around and he isn’t home so I texted him and asked if he got busy last minute and he said there was a train. Which he was stopped by the bar his uncle goes to and saw his uncle so he pulled in to talk. He was super drunk and needed a ride home, he also lives 30 miles out of town. So he takes him home while I’m just sitting up waiting for him to get home. I fall back asleep and wake back up around 4am and he still isn’t home so I texted him again asking where he was and he didn’t answer so I got a little snappy and told him I was just going to go to bed and that I went to bed early for him so that we could go for a drive or do something together and it was kinda rude that he just didn’t come home like he told me he would. And he texted back 30 minutes later and said he would be home soon and that he still wanted to spend time with me. So I try to wait up longer but end up falling asleep again and guess what time he finally shows up. 6 am. At this point I’m just annoyed and mad so I don’t talk to him I just lay there on my phone while he says he’s too tired to do anything. So now I’ve been wide awake for the past 3 hours since he got home while he’s snoozing. He does this all the time. I can’t even count how many times stuff like this happens. And it’s literally because his uncle needs him to go into work early all the time, or on his days off 9 times out of 10, needs him to do things that they, the owners, are suppose to do but don’t want to do they make him do it, or needs him to give him rides home in the middle of the night because he’s too drunk. He knows that he needs to start telling him no but he just can’t. And it’s starting to really annoy me. He’s been really grumpy all week because he doesn’t want to work there anymore and he’s tired of it too. So how do I help him? I need advice, I just want this to be over with so I can have my boyfriend back

And no, I’m not going to leave him over this so please don’t tell me to, seems to be the go to comment on here.