#1 remove the condition bar as it's displayed (real guns don't do that)
#2 a 3 tiered system of malfunctions that is a "die roll" that is dependent on cleaning your weapon
-tier one having to do SPORTS (basically what happens now with a malfunction) that takes about 5 seconds with no tools
-tier two a malfunction that takes 30 seconds to a minute so it isn't viable during combat but needs no special tools
-tier three a major malfunction that needs a workbench or vendor to rework
#3 there would be a percentage chance of each malfunction that are influenced by different variables (such as complexity weapon and skill, with cleaning being most influential)
This is just my opinion on how to tighten up a fairly sloppy mechanic and I'm sure there are better solutions