I don't think that you can SET one element of an array at once. You need to set the entire array. It's because array is a property of Node but Node.array[1] doesn't make sense while using with SET.
So, after playing with it for a while I figured out ...
Thanks for providing good amount of details in your question. But it'd be more helpful if you could provide the errors you're getting in both the ways.
Btw, for now I solved it by merging each relation separately.
with 13900 as engineCapacity, 160 as...