Using %include means that you have to look at your program as if it would be one big bunch of code. It's the same like having all the code in one single file.
It will therefore depend on the error in the included code whether SAS can recover from it or not (i.e. a unbalanced quotation mark would be "desasterous").
%syserr is an automatic read-only macro variable.
In my experience, &syserr is not reliable and should only be used after thorough testing of all scenarios. There have been extensive debates on SAS-L if you want to see some history.
If you are still seeking to control a process flow of SAS programs then the only reliable, home-grown solution uses scripting. For Windows, your choices are .bat files, WSH scripts or the hugely powerful PowerShell.
However, all of these options have drawbacks and there is good reason that schedulers are expensive - it is very difficult to get right.