I know this is a dead post, but I've opted to include this info here in case someone was searching for a problem like mine.
I had a very similar issue when I was trying to abort an import during Migration using the tool, it left a partial domain under an account. I was trying to delete the domain and found out it had subdomains that had no FTP user listed, which cued me to think that it was trying to delete a non-existant account on the system. (If this is true or not, the fix should still work for you)
In the mySQL database, in the psa database... in the table called subdomains there could be /as in my situation/ a subdomain that isn't fully inserted. I'd remove those rows.
(Simple, but not complete instructions from root)
mysql -u admin -p
<your password>
use psa;
select * from subdomains;
Then, it's quite simple... find the one that doesn't look like the rest (

) and delete it.
DELETE FROM subdomains WHERE <somefield> = 'it's value' LIMIT 1;
Quite simple, hope this helps.
(Someone feel free to provide more clear instruction.)