Microsoft Graph now allows you to apply granular permissions to SharePoint Online Sites for Azure AD Applications. I posted this blog on dev.to platform for better findability. This blog post is a summary and link to that article. This way I want to keep track of my contributions at once place i.e. in this blog site.
Hope that helps!