Du kannst die Mail mit niedriger Priorität versenden. In der Serverkonfiguration kannst du einstellen, wann die Zeiten für "niedrige Priorität" sein sollen. Die Mail wird dann erst zu diesem Zeitpunkt verschickt.
Wir haben das mal bei Mails mit riesigen Anhängen gemacht. Dort wurde dann beim Senden geschaut, welche Gesamtgrösse die angehängten Attachments hatte und die Prio auf Low gesetzt.
Diese Mails gingen dann grundsätzlich erst nachts raus.
Wenn das bei euch für mehrere User interessant ist, würde ich evtl. überlegen, dem User ein Feld für die Uhrzeit anzubieten, zu der die Mail versendet wserden soll.
Ist dieses feld gefüllt, werden die Mails in einer MailInDb "zwischengelagert" und von einem Agenten zur angegebenen Uhrzeit verschickt.
Alternativ zur MailInDB könnte man auch die Maildatei des DAU aufbohren und die Funktionalität dort zur Verfügung stellen.
Kann man ja mal drüber nachdenken