Imo best thing to implement would be seperate skills for each weapon type; Laser Weapons, Ballistic Weapons, Explosives, Plasma Weapons, etc.
It may work like this:
base Firing Accuracy x weapon skill = final accuracy
So, a soldier with 114 FAcc, 107 Ballistic Weapons skill, taking an Aimed Shot with a Rifle, would have a final accuracy as follows:
114 (FAcc) x 1.07 (weapon skill) x 1.10 (Aimed Shot) = 134
When it comes to newly discovered weapon types, all soldiers will have low starting values for the weapon type's respective skill.
This means switching to Laser or Plasma will require retraining. Weapon skills will increase a lot faster than normal Firing Accuracy since you don't use the same weapons through the entire game.
With an Explosives skill, it could work the same way, having an effect on Throwing Acc, but also reducing timer precision. So if a soldier with 100 Exp skill primes a nade for 3 turns, it'll explode in exactly 3 turns. But if a soldier with 55 Exp skill does the same, there's a 45% chance (100 - 55) it won't detonate in the turn value specified. It won't be a radical offset, maybe from 3 to 1 or to 5 or something. With this, there's the added danger of a grenade being primed for 2 turns and instead exploding instantly.
This should probably be done in mod form, as it'd change the main game far too much.
EDIT: When I say "soldiers" I mean not just X-COM soldiers, but aliens as well; ergo not all aliens would actively throw grenades, not all aliens would 'snipe', etc, as a result of their lower respective skill level.