Is there a way for extending the oauth2 expiration?
No. The expiry of an OAuth2 token, whether opaque or JWT, cannot be extended. This is a security feature!
The model is to issue a short-lived token, then either refresh it (in the case of authz code or password grant) or get a new token (in the case of client credentials or other grant types). Really these are different ways of ending at the same result: you get a new token. The only difference is in what credentials the app must pass to get the new token.