https://gitlab.com/surfsara/email2trac allows updating Trac tickets from email replies. (I have not used it, but I know it's actively maintained.)
The default Trac search is very simple, sometimes maybe too simple. There's also the Ticket Query UI for field-based searching, which I use very often and quite like. Plugins for using solr or whoosh search engines also exist, but I haven't used them and don't know much about them.
I also recommend the auto-completion plugin: https://trac-hacks.org/wiki/WikiAutoCompletePlugin
Fiddling with Trac tickets right now it seems like something I would love if I spent the time to learn. For example, search is just a text field. I imagine if I learned the syntax it'd be very powerful. I remember Jira, at the time, had a "simple search" with separate auto-completing fields for things like opened-by, assigned-to, open-date, and "complex search" that used a text-based syntax.
Not that Jira was amazing, but UI makes a big difference. A coworker showed me a different frontend someone had built in front of BugZilla and it looked 100x more approachable.
After working at places that didn't use Jira (well, almost all of them evaluated it but deemed it too expensive and too large of a project to migrate) my current job uses Jira, again. Man is it slow (I've heard this is growing pains of converting a codebase designed to run on a single server and making "services" out of it to scale) and there's way more confusing integration. I've been trying to use it as little as possible.