Создайте новый BLOB с объектом JSON, который вы хотите отправить, и затем используйте FormData для отправки его в виде файла.
var formData = new FormData();
var blob = new Blob(['{"hello": "world!!!"}'], { type: 'text/json' });
formData.append('file', blob,'my_file.json');
И затем отправьте его как запрос POST.
fetch('http://URLgoesHere',
{ method: 'POST', body: formData,})
.then(console.log("works!"))
.catch((err) => console.log(err));
Если вы пытаетесь сделать это на стороне сервера, вероятно, проще просто отправить объект JSON напрямую, а при получении на стороне клиента просто создать большой двоичный объект с данными JSON и загрузить его в виде текстового файла.