There are no good options or easy answers. If you are so burdened with technical debt that you spend most of your time refactoring, trying to understand the code, fixing bugs, etc that you can't innovate and add new value to the product, the business built around your product is going to stagnate and eventually collapse under your own weight. In my opinion you have 5 options:
- Rewrite the software from scratch
- Refactor and incrementally improve over time
- Pay down your debt in a large chunk
- Live with it
- Find a new job
If you can sell re-writing to the company, that is the only viable approach for continuing with the product, but you have to sell it to the business and they will be spending a lot of money to get no new features for up to a couple of years.
Refactoring and paying down your debt over time won't work. Consider it as a financial debt: it takes 23 years and $7000 to pay down a $5000 credit card debt making the minimum payments each month. Even if you do go the refactoring approach, you can't add any more technical debt which means fundamentally changing your development practices.
Paying down your debit a large chunk probably won't work. Its a tough sell to the organization and if your problems are architectural, you may not be able to address them in a limited time period. At best, you will be delaying the problem.
In the long run, living with the technical debt isn't viable, or we wouldn't be asking the question about what to do with too much technical debt.
Finding another job might be your best option. If you enjoy designing and developing new software and creating value, them this might be right for you. Just make sure you learn from being burdened with too much technical debt and avoid the problem in the first place in your next job.