Partition with sub domains, it simple and effective. If your domain is too large and causing lots of conflicts, split into sub domains. You end up with simple firstname.lastname@example.org. email@example.com firstname.lastname@example.org, or if you have a student body included email@example.com through firstname.lastname@example.org.
As a perk you can route http traffic on the subdomains to the relevant sub groups website landing page.