Given the way you are working and that your boss is a responsible control freak, branching itself seems to be the problem. Rather than creating a branch for every feature, have each developer commit his feature in parts, directly into the trunk. This puts the burden of integration on the developer in multiple smaller steps (win-win). Gate keeper can keep up with tracking smaller changes over a longer period earlier in the development cycle and still be the master reviewer.
Branching itself is something you do not want to do unless you have a very good reason to do it or you gavehave no other option. You are small enough to keep things in sync more tightly, which will be easier and safer.