Sounds a bit like dominance issues. I would first start out by initiating "Nothing in Life is Free" (NILIF). All NILIF is saying is that in order to receive something, your dog needs to do something in return. Before you give your dog his dinner, ask him to Sit. Before you walk out the door to go for a walk, ask him to sit and wait patiently for you to leave the house first. Dog wants treat? Dog needs to sit. Dog wants toy? Dog needs to Down. Dog wants dinner? Dog needs to spin around 5 times (kidding). Anything dog wants, dog needs to *earn*. Hence, the name, Nothing in Life is Free. Additionally, because you are the sole keeper of all things good, you get to do everything first. You exit the house first. You eat first. You are leader. By initiating this golden rule, you are setting down the rules that you are alpha. Dogs instinctively respect their alpha and will never display aggression/resource guarding unless they're trying for the position of top dog.

Secondly, I would really assert myself about the "Drop It"/"Leave It" command. Treats are nice training tools, but it sounds like they've become a crutch. Instead of waiting for moments when your dog has a toy and is becoming aggressive, teach your commands every day. Remember, this is a new command like "Sit" or "Stay" and you need to start from Square 1.
http://www.dog-obedience-training-re.../leave-it.html

Also, prevention is key. Whenever you see your dog heading for a small object, command a firm "LEAVE IT" and the situation will be avoided. Good luck! I have a dog with resource aggression and it can be difficult to manage at times.