User flow with on-demand service platform

Product: XYZ On-demand service provider (example cleaner)

Context: User has to select at least 4 service providers to increase his chances of getting a service provider he has selected on the platform.

User flow: John wants his house to be cleaned. He opens an app, selects his location, selects the time and then he sees a list of cleaners in his area who are registered with XYZ. He selects a cleaner with good reviews and high ratings and pays the deposit.

Cleaner flow: Cleaner Alpha receives a notification and decides not to take the job because he is a freelancer and XYZ cannot lock him into the obligation of taking the job.

User frustration: John is informed by XYZ that Alpha is not available and he has to choose another cleaner from the list again after going through the same user flow.

XYZ solution: In order to increase John's chances of getting the cleaner he selected, now XYZ encourages John to select at least 4 cleaners in the flow. For example, Alpha, Beta, Gama, Zero. The reason behind this is if Alpha and Beta reject the job, there is still a chance that Gama and Zero will accept it and someone will go to Johns house to clean the house.

Question: I understand there is a fundamental flaw in the service design with the product. Now as a UX designer, what is the most human way to solve John's frustration?

A. Pre-select 4 cleaners and tell John why the system is doing it for him. B. Disable the next action to go to the payment unless he selects at least 4 cleaners. C. Any other way to solve this problem?

Many thanks