Well, generally when you have to rely on a specific execution order (with rare exceptions) it is more often than not an indicator of “noodles code”. Well, it’s actually called “spaghetti code” and in this case, i’d call it a “code smell”. Anyway …
For an example where SEO makes sense, you’d find this only in a “system” like a NetworkManager which may need to be executing before or after all other scripts relying on the network code.
Hence you’ll find only the crucial systems hooking into SEO:
I put my ClientNameTag in there simply as a quick hack for a prototype - I needed it to run after something, which now isn’t even in that project anymore but the script execution order remains because the script is in a package - ouch! This is a potential issue to happen moving forward and easy to overlook, in fact, I wouldn’t have noticed if you hadn’t given me a reason to go into the SEO settings. 
SEO should only be used for global event systems, such as NetworkManager, EventSystem, InputSystem which are required to run before (or after) all other scripts by default. For instance, network messages and input state should have been fully received, processed and made available to other scripts within a given frame without knowing which scripts might rely on that information.
You do not have such a system, otherwise you’d already have a global system in SEO that runs before and/or after any assetbundle character script as needed. Therefore I’d say you’ve been following bad practice and now it bites you.
Look at it like this: you’d want to eventually refactor your scripts anyway to sequence the execution in the desired order while at the same time improving code quality. The SEO settings breaking with asset bundles is simply the first occurance where this bad practice rears its ugly head, now you have to bite that apple and fix it and, hopefully, after the refactoring you’ll come to appreciate the improvements in your code.
Within a single prefab you should totally take control by manually sequencing the code execution within the prefab rather than relying on SEO. Typically a manager script at the root level orchestrates the execution of all other scripts attached to the object deeper down in the hierarchy.
If it’s important that the sequencing occurs in relation to other prefab instances, then perhaps you’d need to have a global event system as well which you may have to put into SEO, perhaps one with a command queue like the network or input system, so that each script relying on it has a list of things to do and/or the current state at the right time (ie during Update).