I'd rather have that the wallets let the mempool know that a transaction is precious (with a flag), than having the mempool manager poll the main wallet.

If you want to do it this way (poolman -> wallet) please use the RegisterWallet / UnregisterWallet machinery from main.cpp, and add a CWalletInterface method for this.