oh-my-zsh is also horribly slow out of box, spend some time manually configuring zsh and observe your terminals open in fractional seconds instead of multiple seconds.
I'm familiar enough with the terminal that I generally type by rote, I don't even need to look at the terminal while typing for most common tasks.
As for OMZ, yep, it includes a lot of functionality out of the box which makes it a little slow. I personally use prezto because it's quicker. Give that a try.
It's basically exactly what I had before except I can't click on links in my terminal.
iTerm2 is nice but for my usage it does too much. If there were a lite version that cut a lot of the more niche features and focused solely on speed and responsiveness I might consider it.
I also like FZF a lot for fast history search: https://github.com/junegunn/fzf
On that front, I've been using ZIM: https://github.com/zimfw/zimfw
I also recently added sandboxd so certain things are not run during shell init (rbenv/pyenv/asdf/etc): https://github.com/benvan/sandboxd
I have a keybinding set to CTRL+CMD+SPACEBAR for show/hiding item2. This is fairly close to activating the spotlight shortcut (CMD+SPACEBAR)
This makes it easy for me to seamlessly swap between my IDE and 2-3 terminals. Without having to use desktop swapping, etc.
Preferences => Profiles => (Choose or make from scratch[1]) => Keys => Configure Hotkey Window
I think that works with the Control-Command-Space binding mentioned above. I use caps lock to toggle my terminal, which required some remapping via Karabiner[2]
[1] I have a profile called "Hotkey Profile" I don't remember if I set this up myself or if iTerm did it for me. I have it configured to appear on whichever monitor my mouse is on when I open it, and to have its window fill the bottom 1/3 or so of my screen