I have found another issue and this one does not seem to be a fault of my own.
it's still your fault. you are not using the loader the way it should.
the loader uses SD card in priority.
if you set any path to USB while not having an SD inserted, and insert an SD card, it will re-create/use the config file located on SD card (priority, remember?).
if you want to have USB Path when both SD is inserted and not inserted, you'll have to have 2 copy of the config, one on SD when SD is inserted, one of USB when SD is not inserted.
anyway.... You shouldn't use resources on USB. It's a fast way to corrupt your partition, especially if you use 2 USB at the same time. even more dangerous if you insert/eject a device (usb or sd) while the loader is running.
having resources on USB is a very bad idea, USB should be only for ISO or ROMs, not homebrew's data.
you should dedicate an SD card for every console you use, SD are cheap, and it's working better.
I even went as far as deleting my emunand and started from scratch (redump and reinstall of all my wads), but the problem still persists. Any ideas?
that's what I was about to suggest.
it was possible using neek2o corrupted the file system used by emuNAND cIOS mode, because both modes are not using and affecting the system files the same way.
but recreating a clean new emuNAND dump should have fix the issue.
if the problem persist, it looks like the problem is the cIOS, not the NAND dump's file system.
did you verify you are using proper cIOS base/version and loader's options?