На входе валидный json (делаю запрос через Postman и все нормально), в qt приходит вроде такое же количество байт (QNetworkReply::finished не может ведь сработать пока все данные не пришли?), но вывод в qDebug() что QByteArray, что QJsonDocument дает один и тот же результат - данные обрезанные (прям на фигурной скобке)
Это ни как не связанно с количеством байт. Попробуйте сделать minimal example из двух строчек, тогда станет понятно. Без какой либо конкретики, вам тут никто не ответит.