"These chains call several SAS programs (via "include"). These chains can call N programs that do not depend on each other."
%include allows you to execute code stored in multiple files but the code gets still executed as one single program. There are syntax errors like unbalanced quotes or things like an abort statement in code from which you can't easily or not at all recover whatever "tricks" you use.
If you would execute these programs each in their own environment then your problem would just go away. Options to do so:
A) Use a scheduler and build flows (1 per chain). SAS Management Console allows you to do so.
B) Use SAS/Connect (if licensed) and call your programs within rsubmit blocks
C) Use an X command (or %sysexec) to issue OS level batch commands to run your programs (requires option XCMD set)
Any of above 3 options will execute the programs independently from each other. All options also allow you to execute some or all of the programs in parallel.
If you execute everything together then it's not only about syntax errors but also that a previous program can change the environment for the next %included program - all the work tables, options changed, global macro variables created will still exist when the "2nd" program executes.