Couple of suggestions. Try making cannabutter and then make cookies or something, so you can eat it instead of smoking. Eat some a couple hours before bed, it will last all night but be wore off by morning. I find it works a lot better than smoking because it lasts much longer and the effects are different.
Second, try a little melatonin right before bed. All my life I've been troubled by waking up at 3:15 a.m. Melatonin has completely eliminated it. It's cheap, natural and effective.