Why short access tokens
A leaked access token is valid until `exp`. If `exp` is one hour out, the attacker has at most one hour. If `exp` is one week, the attacker has a week. Short lifetimes don't prevent leaks, but they cap the damage.
Pair short access tokens with longer refresh tokens stored server-side. Refresh tokens are exchangeable for new access tokens; they're the long-lived credential. Because they live in your database, you can revoke them — logout, role change, or "force sign out from all devices" all become "delete refresh tokens for this user".