Alright after some research I probably found a workaround to fix this. I got help and inspiration here. The problem is that sometimes when the elements are stored in containers such as ScrollView the z-order thing doesn't work well plus the container can catch mouse event not allowing it to propagate to the helper MouseArea. In such cases all the problematic elements need to contain TapHandler which allows to catch the click event and do custom action. So for example:
ScrollView {
TapHandler { onTapped: outFocuser.forceActiveFocus();}
}
In this way no z-order tricks are needed nor the onActiveFocusChanged property in TextArea.