Spreadshirt is the one of the largest sites that allows users to sell their own t-shirts. Their t-shirt designer allows you to add text to shirts or work from a company and community added database of images or upload your own. After you create your t-shirt just markup the shirt above the Spreadshirt markup to set your profit for each shirt that sells.
Spreadshirt has great print options, and good print sizes for custom apparel. Spreadshirt has been in the game for years, has been used by big corporations like Nissan, CNN, and The Guardian, has a huge user base, and carries a seemingly infinite resource of designs, clip art, and products. However, Spreadshirt lacks strong content curation, which leads to offensive and uncouth (think tshirthell.com) designs on their front pages, which clash with the clean, professional theme of the site.