Maybe the TweenMax.allTo could allow you to group your tweens (the stagger could replace the different timings you have between the 3 tweens of an element, i guess this wouldn't change so much the progressive movement feeling.
And you could also use a custom ease function, or work with ease functions' parameters to find a way to tween the elements only once. That way your code would be much simplier :
TweenMax.allto([myelem_a,myelem_b,my_elem_c],14 (sum of the in / between / out tweens timings),{x:targetX, ease:customEaseFunction},.15(for the stagger), nextFunction);
I don't know if it would be faster, but it certainly would be cleaner