You could try setting up a scale negation transform between the scaling joint and the children whose position you want to maintain.
To do this, create a new transform or joint (i'll refer to this as 'scaleNegXform') with the same position and orientation as the joint that will be scaling (i'll call this 'originalXform'), the pivot position of thes two objects must be identical for this to work correctly. To set up the scale negation, you need to have 'scaleNegXform.scale' always equal to 1.0/'originalXform.scale'. You can set this up using a node network or an expressions, I always prefer to use nodes over expressions.
Now, place all the objects that you want to maintain positions of under the 'scaleNegXform' node.
Hope that helps.