I think that tank is about a 6.5gal (roughly, too early to do math).
My guess is you have an over stocked tank and a stressed out boy.
In anything that size the most you should have is a betta and a shrimp or snail.
Or divided for two bettas.
Pet stores give really crappy advice when they see a sale coming. I'd really look into getting a bigger tank, or rehoming the other fish.
If by cat you mean like a cory cat, then they are shoaling fish, and really should be kept in schools of 5 or more to be happy. If however you are talking about a pleco, they grow well over 12 inches, and are not recommended. Unfortunately most of those fish are schooling fish (groups of 5 or more) to be happy and stress free. I'm thinking all your fish are stressed, and that is likely why your betta is clamping and hiding.
I didn't see anything physically wrong from the pictures, but like I said, I suspect he's very stressed.