Extend link objects with headers

This is a job for a service profile description language like ALPS, not a hypermedia format like JSONAPI. I would also encourage you to make sure any non-standard representations sent using prefer:fields=minimal to be cache-control: no-cache as attempting to mix multiple representations with no URI difference will create huge headaches for proper cache management.

A hypermedia format is not enough to drive a hypermedia API, you need to have a profile(s) which describes the entire potential vocabulary, which would include the entire range of attributes, composite relationships, and affordances.