Hi everyone. I'm going to tackle your questions in reverse order:
Karen Zbierski
Once a user enters their email address, the system performs a look up based on their domain. If no domain is found, or the user is using a commercial email address (such as outlook.com, gmail.com, yahoo.com), they will be prompted to create a Microsoft Account. If this behavior isn't as intuitive as you would like or expect, consider opening a request on https://sharepoint.uservoice.com. I did a quick search, and did not see this specific issue called out. If you decide to make the UserVoice request, please update this thread so others may vote on it.
Peter Morgan
If the user is using Ad-Hoc invitations, that is, the invitations that include a One Time Code as part of the authentication process, then yes, they will have to access the link from the email every time. If they have signed in as a Classic Sharing or Azure B2B user, then they should be able to access the item through a direct link.
Maria Prani B
Without deleting the user object in your tenant and starting the invitation process, your collaborator's best bet is to access the file using an In-Private or Incognito mode browser, or any browser that is not currently logged in to their Organizational ID. If you can engage your organizations global O365 admins and get them to delete the user, make sure to also delete the entry in the user information list.
Go to your Site > Gear > Site Settings > People and Groups. Change the URL query parameter ?Membership= to say ?Membership=0, which will expose all users on the site. Find your external user in the site and delete them.
Once that is done, you can reinvite, and make sure the external user knows which account type to select.
=============
Thanks, everyone for being patient as I get out these replies, and don't hesitate to follow up with any additional questions or comments!