Whats the drawback for just including the ip in jwt and revoke if either time is up or ip change ?
The "IP changes" is a common fallacy - even the mobile IP depend on the datacenter(s) process it. There is no grantee there will be a designated aliasing, and effectively there could be multiple IPs for the same client interleaving.