Все верно, изменение массива, да и вообще любого объекта, который не испускает changed-сигнал, не активирует биндинг.
Чтобы сработала привязка, не обязательно полностью очищать массив, должно сработать что-то вроде:
Javascript
var arr = qmlObj.arrayVal;
arr[index] = someVal;
qmlObj.arrayVal = arr;