You probably want the FX Channel less than 0db. Use it to apply as much reverb as you want but make sure the reverb is 100% on FX Channel.
In this particular setup, yes I’d probably route the output of the FX Channels to the pre-master group.
You don’t need to use an FX Channel for the Reverb but it’s processor efficient to do so. It can be easier to not use FX Channels if you know you’re going to be exporting stems and want to batch export.
Efficiency is one reason I like to do it this way.
But for creating a space or room with reverb, I like to send the instruments to that so that they share the same space. In this way, I control the amount of reverb with the send level. Is this not a good way of doing things?
You could also create a group, insert the reverb - alter the wet/dry control within the reverb, and then route all the tracks you want reverb on through the group.
That way it’s easier to batch export stems for a library publisher, mastering or sharing a project. But you might find yourself using more reverb instances just because of they way you might be routing things.