Should i clean up the vertices on this model?

I am a bit concerned on whether I have too many edge loops and if so, how would i go about cleaning them up. The edge loops are there to sharpen the subsurf.
Thank you.

Select the edge loop and press x choose edge loop. You really only need one edge loop per sharpened edge if that’s what they are for.
Have you tried using the crease setting? This can lighten your geometry by telling Blender where the subsurf loops should go without you having to make an additional loop.
Right now there are too many in unnecessary places like the trigger guard. But to delete a loop without creating Ngons means that the loop must go all the way around -(I’m sure there are exceptions!) IMO better to have a few extra loops than more NGs