I posted a job about 8 months ago. The guy had good reviews, understood and accpeted the job just fine. At first the comunication was good but later he constantly kept giving excuses as to why there's no progress or updates. a few months in his replies would take weeks and it would just be the same excuses. The only time I would hear from him is when Upwork send out a notification about the job being inactive and would soon to be closed. When that happenes he would tell me to request for change, so that it would extend the job. In a case like this would it be possible to cancel the job and get a refund? or could he still dispute it and get the money still?
Ugh. Why are you wasting your time even thinking about things like that? You're better than that.
Successful clients work with productive team members. Clearly this freelancer is not a productive member of your team. Stop working with him. That's it. It's not complicated.
Continue the project only with the other members of your team. Hire new people of necessary.
Stop wasting so much time with people whose work or scheduling or anything else does meet your expectations.
I sure hope you haven't been paying him for month when he's not producing any work. You should have cancelled the job months ago. Yes, cancel the job. The money in escrow will be refunded to you UNLESS, like you said, the freelancer disputes. There is no reason that he should be paid for doing nothing.
You can end the contract and request a refund, which your freelancer would need to approve. They will have the option to file a dispute and request payment for any work they might have delivered to you since the start of your contract.