I bought 2 dozen mixed T-shirts and hoodies (mostly T-shirts) with the logo for my business on them front and back in two sizes (the logo, not the shirts). Because I wear these things daily, I bought good T-shirts and good hoodies: tagless 100% cotton (mixed polyester increases pilling). I think I was in for about $15 a T-shirt. More for the hoodie, obviously.
I'm not getting any kind of volume rate on these for a 2 dozen shirt order of mixed sizes (for friends and family as well). I can't imagine anybody ordering in real quantity is paying more than $10 a shirt, even for good ones.
If you go through somebody whose business is making and shipping t-shirts, you get the benefit of their lower shipping rates and their bulk purchasing power for the shirts). If you're handing them out at a trade show, your unit cost to ship a couple hundred shirts is negligible.
For me, my T-shirts for my business are effectively free: they replace other t-shirts I'd have to buy (or would, once I got through all the company and trade show swag from when I worked software). Plus they promote my business. And when they're too beat up to wear, they become shop rags before they hit the trash.
I think you make some valid points (sizes are a nuisance), but I don't think T-shirts are the clear stinker for the folks giving them away that you think they are.