I had a similar problem. You can fake this with using linked directories.
I created a batchfile Start_Ethereum.bat with this content:
cd C:\Users\[MyUsername]\AppData\Roaming
mklinkD Mist "Z:\Ethereum Wallet\_datadir\Mist"
mklinkD Ethereum "Z:\Ethereum Wallet\_datadir\Ethereum"
mklinkD "Ethereum Wallet" "Z:\Ethereum Wallet\_datadir\Ethereum Wallet"
start "" "Z:\Ethereum Wallet\Ethereum Wallet.exe"
ping 127.0.0.1 -n 20 > nul
exit
Like you can see in the paths I have all files on an external drive. Because the wallet would create the directories on drive C: one has to create dir's on there that link to the paths on the external drive. Nothing is stored on drive C: anymore I think.