Файловая система рассматривается в самую последнюю очередь.
Как раз файловая система - это лучший способ хранить файлы. Или у вас к ней предубеждение? Не достаточно круто? Возьмите ZFS. Минимум обработки, максимум эффективности, файловые системы для этого и разрабатывалась.
Выризать аттачи из письма нельзя.
Почему? Вы их что в MIME BASE64 храните? Как раз нужно - делайте папку для каждого письма и сохраняйте все атачи из него в папку. Конечно, нужно держать индекс файлов и писем в СУБД, с дополнительными полями, которых нет в файловой системе. Для этого лучше взять реляционку и хранить там имена файлов в UTF-8, а на диске держать файлы переименованные, например в ID записи в БД, можно в HEX.