How can I ensure that bitcoind does not use unspent outputs for a given address?
You can use lockunspent to lock (in-memory only) unspent inputs created by transactions whose at least one output was pointing to your "special address".