Its funny, Andy - I had the same thought about the gill flukes the moment I read the topic title!
With a parasitic infestation of gill flukes it is entirely possible, and very common, that fish spit their food back out. The gills get attacked and infected by those tiny gill flukes, and since water is processed through the gills during eating, it is painful for the fish, so he spits it back out.
One very good treatment for gill flukes is Prazi. You can either get it from Goldfishconnection.com, or if ordering takes too long (which I suspect it might, since the fish hasn't swallowed much of his food in a week), you can get a product called Parasite Clear from Jungle. Most pet stores, even Walmart, carry them for little money, and it contains prazi as well as other "goodies". It is easy on the fish, doesn't harm the beneficial bacteria in your filter and very effective.
I hope your fish pulls through - he sure sounds like a fighter!