I had some red flannel that bled and bled. I washed it about 7 or 8 times in hot water with color catchers. I also used it in a denim quilt and will always wash it with dark colors and a color catcher. Finally it quit bleeding.
To set color in fabric you need to buy something called Retayne. Read thru this link. It explains things better than I.
http://www.pburch.net/dyeing/FAQ/settingdye.shtml