you do the FixObjectPivot only once, just right after you load the model, just to fit it manually in your players hand, if it does not fit by it self, and thats no resource problem (doing it myself on a mobile, works). The place and direction of the weapon is given by the place and direction of the bone you attach it to. You should not do it repeatedly in your main loop, that is resource demanding.
If you do the offset you maybe need from 0,0,0 previously in your modelling tool then you can skip FixObjectPivot.
Load the weapons separately, hide and unhide them as you wish.
Best is if you go and try it, you will see what i mean.