I'm so glad that the crate is out of the way. A lot of people have taken this system as THE only way to train a dog. It is a controversial method as far as I am concerned and you really have no need to use it.
By walking away from the dog when he is eating, after first eating yourself, you are stamping your dominance all over the ritual. By not touching the dog and leaving him alone to eat he can not get the idea that it is OK to growl at you because he never has to at feeding times. You have not given in to the growling - rather you have taken control of the situation, he is fed under your control and there is a clear message of dominance without any conflict. You are making the decision to walk away - the dog has not forced you to back off.

As for growling when you wake him....
I'm afraid you are asking the dog to react this way. Before you approach the dog when he is asleep speak his name, make sure he is awake and aware of who you are before you approach him. This is only fair.
(Make sure that the dog gets plenty of undisturbed sleep as well.)
Your dog does not want to bite but from his point of view you seem to be provoking him into doing it. An awful lot of dog bites result from a dog being suprised when asleep, especially child bites - the kids are playing and fall onto or against the sleeping dog. The dog has snapped before it even realises what is going on. It is a natural reaction and your dog can not help but react in this way.
You know he will have this reaction and there is nothing he can do to stop it so take away the possibility of it happening and the problem has gone.
If you wish to pet the dog when he relaxed and lying down then be fair about it. Either talk to the dog first to make him aware of you or start to pet him before he falls asleep.

I stongly agree that a dog with these problems should not be allowed on the bed with you. Your priority is to help the dog realise that it is safer and more comfortable for him to accept you as the leader as you know more about living in a human world than he can. Allowing him on the bed (or indeed the furniture) is giving him the signal that he is of the same rank as you in the pack and will only confuse him. It is a good sign that he is willing to get down when asked.

Please never force the dog into an Alpha roll - that is the quickest way to get your dog to bite you.

If I can be of any more help please let me know. You are the sort of owner that I pray for! Good luck, think strong silent type leader not hands on, calm and aloof not fussing and worrying.