Help a Momma out

So I'm a young mom I'm talking like teenage young and I have a very short temper and get stressed easy. My son is almost two and has started "terrible twos" early. The past few months have been hard! He has a problem with taking things from other kids, hitting, throwing stuff at people, and he throws himself on the ground as soon as I get on to him for something. I've tried time out it didn't work, I've popped him on the hand (which doesn't even bother him) and I'm not going to lie I've spanked him before, and before I get back lash for it he understands ALOT more than other children his age and I spanked him because he whacked my friends one year old daughter with a toy and then ran over her with it (it was one of those walkers you stand up and push). I honestly have no idea what to do, I need parenting tips I also freak out when he freaks out and I know I'm not supposed to but I just get super stressed during the situation and don't know what to do. He also acts up in public very bad and ESPECIALLY in Walmart. I just need some help, my mom tries to help as much as she can but everything she's told me to do didn't work.