How would a shared cache deal with that difference?
It should be fine to share the cache. It is designed to store information coming from upstream servers, not whatever we generate or send to clients.
You don't even need to split the instances.  It's possible to
      disable DNS64 on a per-client/query basis.  We have an example
      with that in our docs:
https://www.knot-resolver.cz/documentation/v5.7.3/modules-dns64.html#advanced-options
      (sending 5.x link, as you're using that branch apparently)
    
Around dns64 I'm more worried about other kinds of issues:
      https://gitlab.nic.cz/knot/knot-resolver/-/issues/905
    
--Vladimir