@jays,
You bought a sofa made from fabric that was dyed poorly. Return it and at the same time threaten them with a law suit to repair any damage they caused by selling shoddy goods. There is little the end use consumer can do with this situation to make the fabric "crockfast," which is the best description for your problem....... don't let the sofa seller tell you that you need to have the fabric "scotchgarded" because that treatment will not fix the loose dye particles on the surface of the fabric.
I discussed this type of situation earlier; in my post @ Tue 4 Aug, 2009 12:57 am on the following thread.
http://able2know.org/topic/134915-1
I would bet you $1,000,000 that while the sofa might have been made in the US, that the fabric was dyed in China, regardless of what that ******* idiot robert gentel says.