Your question is based on a misunderstanding of the account system. It's a very common misunderstanding, though.
Unspent outputs are not associated with accounts.
Incoming transactions credit the balance of the account associated with the address the transaction is received with. But accounts only have a balance - they don't 'own' the coins sent to them. Account balances can go negative, and can be modified through the move command, without changing the coins.
The unspent outputs belong to the wallet as a whole, and accounts just keep track of who/what owns which amount of them - not which ones specifically. It is like keeping a wallet around with money that both belongs to you and to a friend. You keep track of how much you owe your friend, but you don't keep track of which specific notes or coins in the wallet belong to them.
To do what you want, you either need to use separate wallets (which keep the coins separately entirely), or use coin control or the raw transaction API, which allow you to specify manually which coins to use.
Pieter, wouldn't it be better if the accounts feature did function this way, associating UTXOs with specific accounts, and then only spending from an account's UTXOs? If no account is specified, then the software could take that to mean spend from any/all accounts' UTXOs. It seems that's how most people expect/want it to work. Maybe the issue with doing this is with backwards compatibility? – morsecoder – 2014-12-04T15:56:57.260
That's a completely different model, and no, that won't happen. The accounts feature will likely just be deprecated and removed somewhere in the future. – Pieter Wuille – 2014-12-04T16:44:52.210
What you're describing just sounds like having support for multiple wallets. Nobody disagrees with that, but without people actively developing the Bitcoin Core wallet implementation, that will take a while. – Pieter Wuille – 2014-12-04T16:46:00.377