It is not easy to assess your situation. This is a time for self reflection.
You've captured your situation, but you haven't told us WHY you're seeking a PhD.
You've found out that getting the degree can involved real sacrifice and hard work -- taking on lots of responsibilities, trading off performance in one area in order to finish busywork, having situations arise that are somewhat out of your control....
The way to make the choice you're trying to make is to ask yourself "Is this worth it?", and the only one who can make the assessment is you.
I suggest writing down your long term and intermediate term goals. Forget about where you are now. Take an afternoon, and figure out where you want to be. After you've done that exercise, your can ask yourself how attaining a PhD is going to help you reach those goals, and how leaving the program will get in the way of those goals. For example, you state that you're working full time as a software engineer. Can you use that position, especially if you can put your full effort into it, to springboard you into what you really want to be doing? Will it tear down obstacles if you get your degree? Will the added financial benefits of working a real job counter any shortcoming in your career (those numbers are real!)
Ideally, such questions should be asked BEFORE you enter a PhD program. Asking them now, however, is not misplaced. If you can't understand how the degree would advance your goals, it is a success, not a failure, to change your situation as soon as you see the disparity, and not sink more time into a challenging endeavor that doesn't support your goals.