例外クラスは真面目に定義していくと数がめちゃくちゃ増えませんか?
DuplicatedMailAddressException
DuplicatedAccountNameException
InvalidMailAddressException
InvalidAccountNameException
・・・

1つの例外クラスにまとめてしまうのはだめですか?
throw new AccountCreationException("メールアドレスが重複しています");
throw new AccountCreationException("アカウント名が重複しています");
throw new AccountCreationException("不正なメールアドレスです");
throw new AccountCreationException("不正なアカウント名です");
・・・