Значит смотри какой можно сделать лайфхак. Если у тебя есть либы с x86 & x64, то да, они грузятся только в процесс нужной разрядности, однако чтобы процесс стал требуемой разрядности, достаточно чтобы сборка с точкой входа была таргетирована под нужную разрядность. То есть тебе надо собирать ровно 1 проект с заданным таргетом. Либо альтернативный вариант - грузить нативные библиотеки из разных путей с помощью LoadLibrary/dlopen в зависимости от целевой платформы, и раскидывать по путям только нативные библиотеки
Как раз проблема в том, что вместо того, чтобы грузить DLL по нужному пути, решили копировать DLL нужной разрядности в папку продукта. Теперь расхлебываем.