Spoonflower does print custom cottons and other fabrics. Go to spoonflower.com. I have had several pieces printed and have been happy with the fabric quality. They are not cheap but they are easy to work with. You can get a fabric sampler pack for a small fee so you can check the quality. If you are doing short runs they would be a good place to start. You can print as small as a fat quarter.
There are other companies online that offer the same service but I don't know anything about them.