Is json a hard requirement?
https://capnproto.org/otherlang.html allows for a serialization free solution.
XML is old-school, but it works. Any program that processes the XML schema can validate them using XSD files. Repetition can be avoided using extensions like xpath and xinclude.
https://developers.google.com/protocol-buffers Is boring but works.