I can also only think of using the onMapSingleClick command to properly do this. The only downside is, the player has to click on the map to release the units. This can be used as an advantage though, as the click position might denote the destination of the released units.
Try the following (untested):
In the init.sqs, define your map click handler:
onMapSingleClick {if(_alt AND _shift AND count _units != 0) then {[_units,_pos] exec "release.sqs"; true}}
release.sqs:
;------------------------------------------
_units = _this select 0
_pos = _this select 1
_units join grpNull
(group (_units select 0)) move _pos
;-------------------------------------------
In order to release the units, the player must select them via F1-F12, then click on the map while holding the SHIFT and ALT keys down (this is a failsafe measure to avoid accidental release).
Hope this helps,
Spinor