In addition to B12, you might have his calcium and vitamin D levels checked. Serotonin is converted to melatonin in the brain ONLY in the presence of vitamin D and calcium. If he is low in these, he will not be able to get restful sleep, no matter how much serotonin he has in his body.
Also, if he has clinical depression and is low in serotonin, that of course interferes with melatonin production as well. Sleep disturbances are actually the number one symptom of clinical depression.
We also had a thread a while ago that had a number of detailed suggestions for sleep. Here's the link:
http://neurotalk.psychcentral.com/sh...d.php?t=169324