Looking at
PhantomWings's most recent posts is a good source for learning about module editing. Your black screen problem is likely due to misaligned ASM. You'll need to make sure section sizes are properly calculated, which may involve padding. There may also be routines that need to be edited elsewhere to accommodate the extra data. Unfortunately I can't offer much more help than those recent posts.
I can provide some information about Brawlex's workings though. bx_fighter.rel can already load 128 characters (which are slots 0x00 through 0x7F). Adding a 129th slot (0x80) would be neat to accomplish but that won't address the limits of the CSS (although button activator codes may be able to load alt information without dependency on the CSS).
The CSS modifications are controlled by common3's sora_menu_sel_char.rel (which loads further modifications from sc_selcharacter.pac). I think I have the sc_selcharacter.pac modifications already figured out. Understanding sora_menu_sel_char.rel is the final (and biggest) hurdle.
My idea is to isolate and remove the CSSRoster.dat dependency from BX CSS Expansion v2.0.0.x's sora_menu_sel_char.rel so the custom random and custom css codes can be used once again with Brawlex for loading more than 100 CSS slots. This is not going well however.
At least PhantomWings told us what changes were made for alt CSP loading in BX CSS Expansion v2.0.0.x
The external CSP loader more or less stands as it's own unit inside sora_menu_sel_char.rel (Common3's MiscData[13].rel file). The only reason it's paired up with the CSS Roster Expansion is that their hook points both happen to be in there.
I'm pretty booked for this coming weekend and the next, so I don't think I'll be able to help you any time soon, but if you'd like to look into it yourself, you can take a look at the module in Resources\Common3 of the 2.0.0.x package and try to extract the changes yourself. There are 3 things that you'll need to copy out from the module into a vanilla sora_menu_sel_char.rel module. The hook is at section[1] 0x1109C while the corresponding hook routine is at section[7] 0x0. There's also a directory string at section[5] 0xE40 that you'll need to copy and/or change depending on where you want to load from.
Best of luck.