As I said elsewhere, I believe that "Cair bem em alguém" maybe does not translate into "to fit well" (at least the way I understand it). When you say that something "cai bem" you mean that thing (generally a peace of clothing) looks good when worn by that person. "Essas calças me caem bem" means "those pants look good on me". If this sense is included in "fit well" then forget this comment ;-)
According to my Portuguese husband, this sentence is idiomatic. In English, a more direct translation would sound more like, "Those pants hang well on me," (I imagine like a pair of loose jeans that fall loosely off your waist). Hopefully this helps with getting the idea of it.
Yes, and it is used quite often. Maybe some will find it interesting that when we talk about how a peace of clothing inherently looks we're talking about "caimento". Thus "o vestido não lhe cai bem" is about a possible nice dress that doesn't look nice on a specific person while "o vestido não tem um bom caimento" is about a not very good dress.