K.V.
My thoughts:
1st of all. Your son is at a time where his hormones are changing everthing. He's "too old" to cry but he's still young enough to feel like it sometimes. Puberty is pure turmoil. Kids don't really know how to release that energy or emotion, so they just blurt out whatever comes to mind. Kind of like a turrets of sorts. They get mad but don't really know why, or sad and don't know why. It's just chaos.
Secondly, we haven't really taught them to analyze their feelings of why, what or how. We've taught them to just react to their wants and needs. Like, I'm hungry and we feed them, I'm thirsty and we get them a drink and so on. We don't teach them much about why they are thirsty or hungry. Their body demands and the anectode is provided.
With that said, try giving expectations and consequences of behavior and language. If he is rude, have him excuse himself from the room and tell him he is welcome to come back when he can be polite or kind. Let him know what language is not acceptable and what is. If he offends you, tell him you find that word or words offensive and why. If he hurts your feelings, tell him that hurts your feelings. Explain it to him. You can tell him "Saying things like that hurts my feelings". This way you are telling him without accusing or blaming.
Also help him understand himself. When he's rude, ask him if he's angry with you or someone or if something happened that upset him. Ask him if he's bored or hungry or whatever you can think of. Try to get him to talk about what's up or at least get him thinking about it. Then ask him if he feels better after being rude or mean.
For his trip to grandmas's, ask him if he wants to go. What if he doesn't really want to? Taking the trip from him won't really matter to him if he doesn't. If he does want to go, discuss your expectations and what he can do to earn the trip.
Don't be afraid to let him know you are angry or upset or dissappointed with him. Help him understand that you love him but don't necessarily like his behavior or attitude.
I never liked to tell my kids they were being bad so I always said ugly. I would say, "if you want to be ugly, go in your room so I don't have to be around you while you are. You can come back out when you stop being ugly". I also told my kids, quite specifically, that if they were going to be ugly or brats, it had better be at home and not in public. When we are out somewhere, they better have good manners and behave. If we were out somewhere and they misbehaved, I told them how I felt about their behavior right then and they had the choice to stop it or we would leave. If they didn't stop, we left and we live over 30 miles from the town where we do all our shopping. The next time, I hired a baby sitter to stay with them and went without them.
Give him a choice. He can choose to have bad language or behavior and lose privileges or quality time with mom or someone special to him. Or he can choose to be good or polite right now and spend time with you now, talking about how his day went and things he wants to do or places he wants to go and see and so on. Encourage him to dream and plan and share his dreams and plans and talk aobut what you and he can do to achieve those things.
I believe in expectations, choices, repercussions, dreams and lots of encouragement. Most of all I believe in being honest with your kids. Let them see you cry and laugh and be angry and such. Just show them how to be productive with those feelings. You can be angry without being rude or destructive and you can be sad for a while and its okay. Everyone feels these things so let him know its okay.
I could go on but I won't. I hope this helps a little. My thoughts are with you. Good luck.