You already have some excellent advice. I'd be tempted to try using something like Capture::Tiny in the main program to wrap calls to the external module's code. It allows you to capture only stdout, only stderr, both merged, both separately, tee one or both (capture and send to the original destination), and all of this only for the scope of the coderef you choose.
I have not tested the module with Mojo to be sure it works. I would think it's worth trying, as searching the web for the two together does not turn up any dire warnings.