If you use an %include statement then you have to see this as one job / one chunk of code and not several jobs.
You will therefore have to build your job logic in a way that part of the code is not executed when a certain condition is met. An abort statement will - as you say - abort the whole job.
You could - for example - populate a macro var in your job when the condition is met (using call symput) and then stop this data step using 'stop'. Then have all subsequent steps in a macro where you only execute code if the macro var is not populated.
If this is about having a master job which starts child jobs then you could use rsubmit blocks to spawn jobs (an rsubmit can also be used on the same machine to create several SAS sessions in parallel). Google a bit: There is a white paper explaining on how to do this.
If we are talking about multiple SAS jobs (scripts) submitted externally from SAS (let say JCL, shell script, batch script) then it's a lot more simpler, you just have to control the execution through the JCL/script you are using.
You can cancel execution of %included file by using
ABORT CANCEL FILE;
or %ABORT CANCEL FILE;
within the %included file at the conditional statement.
This is new in version 9.2. It can be used in a %included file or an autoexec file. There's a warning in the documentation about the effect of ABORT CANCEL FILE on open macros, (it closes them) when executed within a %include file.