Like Alison said, that's all developmentally appropriate for a 2 year old.
Try giving two choices to choose from being what you want him to do. Toddlers want to feel in control. This is when they are developing a sense of themselves. I was a parent coach before I got pregnant and would help parents with behaviors and educational activities for toddlers. You can message me directly so I can give you some pointers if you’re open to it 😊. Trust me it’s not your fault. You’re an amazing mama for trying to understand your baby❤️
You’re not doing anything wrong, mama. This is all completely normal toddler behavior. At this age, they’re still learning how to express big emotions, and tantrums, hitting, and not sharing are just part of that process. It doesn’t mean you’re failing,it just means he’s growing and figuring things out. For the tantrums, staying calm and validating his feelings (even when it’s hard) can help. Something like, “I see you’re really upset right now. It’s okay to feel mad, but we don’t hit.” For hitting and throwing, gently but firmly stopping him and showing an alternative—“We use gentle hands” or “If you’re mad, you can stomp your feet instead.” And for sharing, that’s a skill that develops with time. Encouraging turn-taking instead of forcing sharing can be helpful. You’re doing a great job, and your little one is lucky to have a mama who cares so much. Be kind to yourself,this phase won’t last forever❤️
He’s 2 and it’s completely developmentally appropriate. Keep calm, hold your boundaries and stay consistent. It will pass!!