There isn’t a confirmed n8n bug specific to generic OAuth2 with Microsoft Entra. From similar cases, this usually points to token or refresh-token behavior on the provider side rather than n8n itself.
If possible, I’d recommend trying the built-in Microsoft Entra ID credential first, since it uses a known and well-tested flow. Also worth checking whether your Entra app is actually issuing a refresh token and whether any Conditional Access policies are forcing re-authentication (which could explain the 30-minute disconnect).
If you can share sanitized details of your OAuth2 credential or confirm whether a refresh token is being stored, that would help narrow it down further.