I feel I've done enough for a PhD but my supervisor disagrees
This is a really hard problem that is hard to give advice for. If the advice is bad, you will suffer, not the person giving the advice. You know the personalities better than we do. But, as an outsider, it seems like you are being abused. You are giving, but getting little in return at this point. 

Fighting with an advisor is seldom a wise choice. But quitting after five years with good productivity seems equally terrible, maybe worse. 

For your consideration only, let me suggest a possibility. Work with the graduate advisor on a plan to get you out the door properly. Tell them that you are feeling abused and defeated unjustly and you need to graduate. It is at least partly the responsibility of the institution to assure that you have a clear path. Take their advice to stay an extra semester, but put them on notice that you need funding, either from them or from a proper job elsewhere. Other professors in the department might also be able to apply some pressure if they are approached properly. They can prevail with your advisor even when you can't. Advisors need the support of their peers, generally, and need to be seen as fair in dealing with students. But don't try any of this if your reading of the personalities suggests it would be counterproductive. But you have a right to insist on a fair path and a right to insist that your advisor and the graduate director do their jobs properly. 

If you trust that outside professor enough to ask for a letter applying some pressure on the graduate director, it might be useful (or not, depending, again, on personalities). Most especially if they would consider hiring you.