What fabric would work well for a flag?
Most commercial flags are made out of nylon. It's lightweight, durable, and dyes well. Specifically, the flags on many sites are made from DuPont SolarMax™, which is supposed to be nicely color safe in the sun. For inside use, you should probably be fine with a ripstop style nylon.


  This heavyweight DuPont SolarMax™ nylon is the most popular and versatile flag fabric available. Nylon's combination of strength and brilliant display, along with its quick drying ability, make it suitable for a wide range of applications. Great in rainy areas, its light weight and close weave enable it to fly in the slightest of breeze, giving the fullest visual effect. Nearly every flag we sell is available in nylon material.


Other options include various types of polyester, which is unlikely to stretch the way the cotton you've been using has,rayon (which is a cellulosic fiber like cotton, but does not have the strength of cotton), and the right type of cotton, which is apparently a "2x2-ply mercerized cotton", which is specially prepared in such a way that it absorbs more dyes, is more lustrous, and stronger, so it is less likely to stretch or deform.