The trick to getting a fair, even coating is to not sand and fill everywhere every time. Ideally, you want to be putting epoxy only into the low spots and sanding only the high. Eventually they merge into one even coat.
What I do on my boats is once an area has its weave filled, I stop putting new epoxy on it until I've taken care of the deep low spots. Importantly, I also stop sanding it until all the low spots are taken care of.
So it goes something like this - base and weave filling coats all over, sanding to smooth the coats and expose the low spots, then coat and sand only the low spots until there are no more.
Once this is done, there's still a bit of large-scale variation even though the local low spots have been taken care of. At this point I switch back to overall coats and sanding.
I like to use lots of very thin coats, sometimes building up 5 or more layers between sandings. This is the best way I've found to avoid drips and sags. My best success for thin layers comes from short nap rollers and tipping out with a disposable foam brush.
Whatever tool you're using for sanding should also be large enough to span the low spot you're currently working on. If a quick sanding of a low spot is only removing epoxy from the edges and not touching the center, you need to add more epoxy in the center. If you have the patience, a 2 to 3 foot long fairing board will give the best results in exposing the low spots and smoothing them into a fair hull shape.
When you finish this way, you start with a long sanding session at the beginning, then lots of short fill/sand cycles in the middle while you take care of the low spots and finally a couple of long sand/fill/sand cycles at the end getting the final fairing done.
Remember, too, that this is your boat. For waterproofing and hull integrity you only need to fill the weave. Getting it smoother and fairer is optional. If you're happy with how it looks move on. You can always refinish it next year if you want it slicker and shinier,
Have fun,
Laszlo