HI Joao,
first of all thanks for giving a lot of details of your case, this certainly helps to understand what you do and what are the goals to achieve.
I would like to suggest to use throwing/catching events for your case. So when your sub process goes to aborted state it should trigger an error end event which will thrown an error and then use boundary (attached to your sub process) error catching event that will catch this error and execute alternative flow. It would look like this (very simplified case to illustrate usage of events):
http://community.jboss.org/servlet/JiveServlet/downloadImage/2-634757-17264/450-332/process-ex.jpg
If you make the boundary event interrupting (which is by default) it should cancel the regular flow and move though the sequence flow defined for boundary event. So that should suit your case, I think.
HTH
Maciej