My girl jumped out of her tank a little more than 2 months ago. It took her several days to recover from that. She was quite sluggish and didn't really want to eat for several days. Then, one day, she completely snapped out of it and started eating like a pig again. It took her almost 2 months for her fins and tail to grow back to their full glory. If you look at my avatar picture, you can see her about a week after her jump. I have pictures in my album of her tail almost healed. I haven't taken any recent pictures of it fully healed.
Anyway, give him time, it sounds like he's on the road to recover and I agree with the previous poster, be careful with the bloodworms. Bloodworms are like candy to them and don't constitute a balanced diet. My girl was very picky with pellets and I finally found one she likes. She will only eat Hagen's Nutrafin Max Granule Pellets. She LOVES the flakes of the same brand, which are higher quality than most of the cheaper pellets, but I only reserve those for special treats since they are messy. You'll want to find a high quality pellet or flake which at least the first 3 ingredients are a fish protein source and have very few "filler" ingredients such as wheat or any other type of grain.