What is it about json that models struggle with, in your experience? Is it syntax or structure?
By this I mean that you can basically tab-complete your way into a valid JSON document matching a particular schema.
Maybe there is a way to restrict the set of output tokens based on the current position in a JSON schema of a JSON document the model is predicting?