Can you try giving him more options? Like make it clear that it's time for bed or nap, so do you want red blanket or the blue blanket? Or when you are shopping, do you want to ride or hold on to the side of the Cart? But tell him if he can't hold on to the Cart then he will have to ride. When my son would melt down, run away from me, or wouldn't sit still at a restaurant I would take him out to the car and strap him in and tell him we weren't going back in until he calmed down/listened. Now when he starts to have a melt down I ask him if he needs to go sit in the car, it usually stops him from continuing.
Reply to Dealing with the "terrible twos"