All libraries are romable, and used since a very long time into $E0 and/or $F8 : the issue is elsewhere...
Maybe the four 512 KB blocs are in a incorrect order ?
The order should not matter. If I remember correctly, the exec coldstart code scans a list of memory spaces for resident tags, i.e. what's defined in "exec/resident.i" and each of these goes into a list, sorted by priority. This means that no matter in which memory space a resident tag is found, the priority defines when it is initialized.
Once the resident tag list is assembled, first the components which precede expansion.library are initialized (that's usually just exec.library, if I remember correctly), then the rest are initialized one after another until eventually something tickles dos.library, kicking off the user-visible part of the system boot process.
The CD32 ROM checks the following areas for resident tags, in this specific order:
0x00F80000 - 0x00FFFFFE (512K Kickstart ROM)
0x00E00000 - 0x00E7FFFE (CD32 ROM)
0x00A80000 - 0x00B7FFFE (CD32 FMV ROM)
0x00F00000 - 0x00F7FFFE (diagnostic cartridge)
Note that only the CD32-specific Kickstart ROM looks into the CD32 ROM and FMV ROM address spaces. The desktop Kickstart ROM only checks the Kickstart ROM space and the diagnostic cartridge areas.