If I understand correctly, a JSON Web Token (JWT) can be asymmetrically signed with a special private key (JWK). At least in some common configurations, the public part of the signing key can't be obtained via classic x.509 certificates, but rather by accessing some trusted API endpoint, fetching the public key, and using that to verify the JWT signature.
How is that any better than just sending the entire token over to the trusted API and asking it to validate it? I thought that the whole point of using tokens was that they can be verified without contacting the token issuer, just by checking its signature with a widely available public key.
EDIT: Also, like I commented on @bk2204's answer, even if you cache the JWK, every time you need to refresh the JWK, you need to use the x.509 key to make an HTTPS request to the JWK server. And if the x.509 certificate is expired or revoked, then one should also revoke the JWKs. Seems to me that if the x.509 key can be used for every single HTTPS request that the JWK server gets, then surely it should be good enough to sign the tokens directly.