Integrate an external authentication mechanism.
Something like JumpCloud (I'm using the free version for now). It offers up SAML that can be used in Cloudflare. You can use it as part of their Zero Trust section. You can set it up such that first a user must enter an email address. If that email address (or domain) isn't allowed, no go. If it IS allowed, then they are redirected to JumpCloud for authentication/2FA. Only AFTER this are they then redirected to any hosting services.
This may be a little more than what you were asking, but it's all web-based on the client side, so it would still work with your Android phone.
Otherwise, literally any 2FA app should work.