Начнём с того, что именно такая структура - это не валидный json.
Если тебе приходится работать с индийскими данными - без индийских фокусов не обойтись.
Если ты ошибся в примере и там на самом деле валидный json, то тебе в любом случае придётся перезаписывать весь файл после изменения, т.к., увы, формат json никаким образом не выровнен по байтам, чтоб можно было менять значения в центре файла и не трогать иные.
Единственное что, если не хочется грузить весь файл в память сразу - можно воспользоваться библиотеками для потокового чтения-записи json.
P.S. Конечно, если ты уверен, что новое значение всегда будет в utf8 короче или равно по длине старому, то, в принципе, возможны и точечные изменения, однако это слишком частный случай - сомневаюсь, что где-то есть либа для подобного. Если очень хочется - не сложно будет адаптировать ту же потоковую либу для нахождения позиции в файле и использовать затем стандартные средства работы с файлами для точечной перезаписи, однако выигрыш тут слишком мал, ИМХО, чтоб так заморачиваться.