@Lazar-Demin Also, why is uboot even aware of usb mounts during boot? I thought that generally, /etc/fstab was cleared out? Is it possible that we could fix this by making opkg a little better at running packages off of usb, and ignoring them when usb isn't present/mounted?

Did you follow the guide at: https://wiki.openwrt.org/doc/techref/opkg to effect installations to externally mounted drives. They seem to mention, specifically, that each startup script needs to:
Libraries installed along with those packages are also installed to the external filesystem. This causes the programm [sic] not to start during bootup.

You need to manually set the LD_LIBRARY_PATH in each 'external' startup script:
export LD_LIBRARY_PATH=/lib:/usr/lib:/tmp/lib:/tmp/usr/lib:/usb/lib:/usb/usr/lib