There needs to be something in the FSM that allows it to terminate properly, an additional condition and terminate statement.
Placing this in the debug console will not kill the unit, but there needs to be an easier way:
0 = [] spawn { while {alive unitname} do {unitname setVariable ["BIS_deserter",False,True]; sleep 0.001;};};