I kinda had an idea that you should handle fighting similar to spell casting. You have different skills that represent the training and style. Brutality, Martial, Finesse, Thrown, Ranged, Unarmed maybe.
Barbarians would get Brutality, Paladins Martial, Rangers pick one, Fighters pick one or two initially and more as class features/feats.
You could then tie weapon feats to the style, rather than class. Cleave requires trained in Brutality, Point-Blank a Ranged feat.