Have you told your employer that you do not enjoy listening, or that you do not wish to hear a joke that may be sexual and offensive? Have you left the area when such jokes are being told? As it has been said, you would need to let your employer know that you had a problem with what was being said and done in regard to the sexually suggestive jokes or comments, and give them an opportunity to fix the problem. This needs to happen before you would be able to present the situation to any other agency and complain that you were being sexually harassed. You don't want to go into a complaint and have them able to honestly respond, "Well, she was listening and laughing, and even told us a few jokes too. We were not aware she had any problem with it!"

It sounds as though there are several not really related issues going on here. But the course of action is similar for each of them. Before you try to call in outside forces to fix the situation, you let people on the job know if there is a problem, and you do so in a mature and professional way.

As it has been said, there's no age discrimination that is legally protected going on here. When they say something like, "You're too young to be considered for a management position" you just say, "I hope I can convince you that I'm capable," smile, and go on. Don't prove your immaturity by crying, snapping at them or trying to fight back when something derogatory is said about your youth.

As for being called in and then sent home due to schedule changes, you may complain to them about this, but it is the nature of some types of businesses, primarily food service businesses, that people can end up being sent home and working fractured shifts as needed to meet the demands of management. This is not to say that you cannot carefully check what schedule information you have available each time before you come in, and if you are called in and sent home due to mistakes, it wouldn't hurt to express your displeasure and tell your supervisors that you find it very inconvenient to have to leave and come back because of their mistakes. That said, there's no other recourse except to find another job, and when you do, you leave this one and go on to the next one.

I really strongly doubt if they are going to lay you off or fire you. Because if they do, the business will probably be on the hook, will have to pay higher unemployment taxes because you would very likely be approved to draw unemployment benefits if you are fired without a good work related misconduct reason, or if you are laid off due to "lack of work" because they don't want you any more. But of course it is not appropriate for you to argue this point with them when you are threatened. Just smile and go on, do your work quietly and professionally, and let the chips fall where they may.

No, if they lay you off, it would not be considered slander, even if they told very evil lies about you to the unemployment insurance system. Businesses can fire "at will" which means they can fire you for just about any reason not specifically protected by the EEOC and a few other things, and they can say just about anything to unemployment about the reason they fired you. There's nobody you could sue, no way you could say they were slandering you. Most businesses, especially if you work for a national chain store and not just a privately owned local store, will have very strict policies for their managers on how to terminate employees and what procedures must be followed.