1. One Page Checkout worked perfectly until I upgraded to v3.90.
From what version did you upgrade the plugin? Actually the plugin works much much better in 3.90 as we refactored its implementation between 3.80 and 3.90 release of nopCommerce. So a later version of the plugin for 3.80 was already refactored/improved.
2. I mostly see this behavior when Guests are checking out.
The guest customers definitely do not have an address and a country respectively but if the pre-select country option is enabled then this should work. Does the shipping providers have a requirement to have something more than just a country selected for the address?
3. When I disable the plugin the default NopCommerce One Page Checkout works perfectly.
The default one page checkout forces you to add a shipping address before you are offered with the available shipping methods and that is why it works. Guest customers are forced to add a shipping address (with all the required fields) and then the shipping methods are shown (based on this address). While on our checkout you can choose a shipping provider first and then select an address or any other possible combination based on the customer's individual preferences.
Could you please submit a ticket
and provide us with access to your store administration?
This way we will see how the plugin(s) are configured and what happens during the checkout and will be able to advise and resolve this.