No its not fair, & they are taking advantage because you are good basically! But you do need to be more assertive, as you get older, assertiveness comes naturally, but I know when you're younger, it isn't quite there yet.
I think you are just going to have to stick it out until you find something else. Once the current climate picks up, somewhere like a supermarket, will be falling over themselves to have you work for them. And its always way easier to work just your contracted hours in a bigger supermarket.
I guess its fair to expect to be asked to do some overtime, only now n then though. Even though admittedly, I would rather never have to work over my 16 comntracted hours a week, and so far haven't had to, touch wood! even over xmas.
Just try & tolerate it until you find something else.
It does sound a nightmare though! x