C.S.
Try asking advice from Dr Dobson and focus on the family.
As for the meanness at this age, correct him verbally, every time. Then when things cool down, love him so much, hold him, speak kindly always speak to him with great respect, pray over him, explain how it hurts inside people when he speaks like that and it embarrasses you. Tell him how much he is loved and ask him why and allow him to take his time to tell you then reward his openness with more hugs and maybe some ice cream.
Some kids are not really friendly or social. Do not take him to other people's houses until you get a handle on this. No making excuses. Just tell the truth. You do not know how to correct this behavior. If he is mean to grandma, he doesn't get to go. If he is mean to daddy, he doesn't get to go fishing with dad etc, and it might mean you are stuck home for awhile.
It is very important that you do not raise your voice to him and be sure to always say please and thank you and that was very nice of you, etc. I have disciplined my children very angrily with the words "You will please do as I ask now".
Hopefully when he is being mean he will at least be polite about it.
As for the rest, could he be spoiled? try "ChildWise" books for help at this age too.
I am not sure what else would help. I look forward to hearing how it works out.
God bless your little guy, C.