Hi, Yeah he seems like he has swim bladder which is mainly caused by over feeding, fancy goldfish are particulary prone to this condition. December is a long time for him to have been floating!
Your fish must have really been suffering!
Feeding your goldfish peas is the best solution, have you tried this? Thaw the pea, de-shell it and feed him it in halves. Only one or two should be needed. Don't worry if he doesn't eat it right away, take it out and try again later he should eat it in the end. Keep your chin up if you try this is should work.
Hope this has helped!