Yes, you can edit global model rotation in a weapon's gunspec.txt.
Just add:
rotx =
roty =
rotz =
for rotation on x,y or z axis. You can use positive or negative numbers and they may be decimal amounts as well (roty = -6.6, etc.)
You do not need to edit the animation/model if you wish to essentially rotate the model's origin. This is particularly useful for tweaking iron sight alignment with pre-existing/3rd party models.
Please note that all animations for the altered weapon will be globally offset by the input rotation. Also note that the rotation point is at the model's origin/0,0,0 location. So, you may need to tweak horiz,vert and forward values after the rotation has been set.
Be sure you reload the map after any saved gunspec change for it to take effect. I find that switching between two saved test maps with the weapon preassigned makes the tweaking process less slow than restarting the client each time.
Hope this helps.
Gigabyte P67A-UD4-B3, Intel Core i7 2600K (passmark 8555), 16GB Corsair DDR3, EVGA GTX 970 SC (passmark 8637), Win7 Pro 64-bit SP1, Primary monitor @ 1920x1080, secondary monitor @ 1024x1280