go to "men's" fabric shops for excellent cottons at good prices. The big drawback is that they are men't shops so there's a lot of plains, pinstripes and checks but no flower prints.

Can't help on the other question.