Majority of teachers would not unnecessarily give you bad grades. No teacher wants to demotivate their students. I get it if some don't want to teach but they won't mark you harshly for no reason.
A good way to improve is to first accept that there is a problem, next is to know what the problem is? If you have a good knowledge of subject then the problem would be application of the knowledge. Sometimes the reason you get so much discrepancy is because you did past papers too many times and unconsciously learnt the mark scheme. So if teacher A gives a test based too similar to past papers you get a good score and when teacher B gives newer questions based on past papers but different board then your performance go down.
To resolve the issue you need to do 3 things: one go back to your teacher and ask how you can improve, two: go on YouTube and find a youtuber who is solving past papers for your subject. Look at multiple video for same paper if available. The reason it works better than marks scheme is that you see the thought process of the person as how they are assessing the question and how they are answering it. Three: buy a practice book, any would do, even if the question won't be exam standard you will some newer type of questions which might throw you off initially but would set you right in the end. You don't have to do a lot , just a few days.