You ruled out the 2 easiest ways to do this. Another way would be to set the turn to 0, but then have it move with a looping movement system that shuts off when it is done. This might help the performance issue. Also, you can use pheonix fire to fire in any direction. This might help your unit fire backwards if you need that. You could also swap the unit's visible model for a special effect while moving and then return it once it reached a stop location. I know these are variations of what you ruled out, but it's going to have to be something like this.
Unit is issued an order.
Order is = attack, move, attack-move, patrol
hide u
change u's turn rate to 100
create a special effect attached to u facing 180
set loc = target point
---------------------------------------
Unit reaches loc
u = dynamic indexed correct u
destroy effect
change u's turn rate to 0
set u's facing angle to 180