You have written an app and distributed it under the Apache 2 licence. You have accepted a single contribution, but the code has been entirely refactored. You say you want to sell the codebase, not least because
it might give a chance to desired features to be developed.
The good news is that anyone who wants to develop your code already has just about all the rights they need, under the existing licence. If you were to sell your residual rights in the codebase, it would add very little to what the buyer could do. Anyone can make a free or proprietary app from the code as is. The only things they can't do right now are those forbidden by Apache 2, which include redistribution without clear copyright notices and a copy of the licence, or the inclusion of technologies on which they hold patent rights if they are not prepared to relicense those rights to end users.
About the only thing you have left to sell is the actual copyright in the existing code, and as we have said, that adds very little to what any third party can do, so these rights are not very significant.
The bad news is that you are likely not the sole rightsholder in the existing code. I accept the contributed code was refactored out, but there is a strong argument that your work remains a derivative of the contributors', in copyright terms (search for Ship of Theseus here and elsewhere). The contributor might well be happy to permit the sale, but consent would be required in such a case.
In short, you don't have much left to sell, it's going to be complex to sell it, and you probably don't need to bother anyway given your stated aims.
Though you didn't ask, given that companies actually use this code, and they keep logging support calls, a better way to monetise the project might be to introduce support packages. You can be clear that as long as there are open support calls from package holders, those bugs and feature requests will get priority; only once they are all dealt with will you address issues from non-package-holders, and then only if you have nothing you'd rather do. You can make exceptions for security bugs, things you personally want to work on, and the like, if you wish; but companies need to pay for their support. You will soon find out how much your commercial users really want the bugs fixed!