In my experience, most ringspun shirts printed w/ waterbased ink will look like this after a wash/dry. It not necessarily fading, but the fibers are just rising through the print and giving the illusion that it is. So the same print with the same ink/drying time on a Gildan 2000 would look much better following a wash, just because the shirt itself doesn't get fuzzy. The issue shows itself based on contrast, so a dark ink on a white shirt is always going to look the worst.
In regards to a solution, I've found more ink, more penetration, and more drying time to help. Fixers can help as well. But I usually tell my customers about the possibility of this happening up front so they know what to expect. The same thing happens with softhand plastisol if its runny enough.
On the flipside, I always wondered why the issue doesn't really happen with discharge inks on the same shirts.
Looking forward to hearing if anyone else has a real solution as I have yet to find one. I've always considered it to be part of using waterbased inks.