Everyone's complaining about how NPC classes would remove the roleplay aspect from class, but like... Have you SEEN some of the classes people do? You could replace some teachers with an automated text script, and almost nothing would change. The concept of automated lessons is something I've thought about a lot, and genuinely think it would be a good idea... Just not on SRP. At the present time, it would require much more effort than its worth, especially when we could recruit more teachers and train them up to host decent activities. I could see automated lessons on a larger-scale future version of SRP, but certainly not in the present day.
As for teacher activity, it's 100% the fault of the quota, which is 10 classes every month; over time, I've observed that most people can complete the quota in full within 1-2 weeks*, some even finishing within a span of a few days. Our lax quota enables us to speedrun classes, then either grind out more for a higher paycheck, or just take it easy for the rest of the month**. To fix this, we should change the quota from a monthly cycle to a bi-weekly one, which would encourage teachers to actually do what they signed up for on a more regular basis.
* When I say 1-2 weeks, that doesn't always mean at the beginning of the month. Some of us do it towards the end, during the middle, or do actually take longer.
** We're technically supposed to do something at minimum once every 5 days, but this isn't enforced (I know because I'm one of the speedrunner guys in question).
In regards to grades and class segregation, both are necessary in real life academic contexts, but for the sake of a server whose objective is to entertain rather than educate, it would only serve to make the game less fun. Grading work not only requires students to do an academic assignment, but it requires the teacher to go over every single one, mark the errors, then upload the scores; this is fun for neither parties, because rather than it being about roleplay, it turns the server into doing work and doing chores. Splitting classes based on grade would make the teacher inactivity problem even worse, because it would require even more teachers that we do not have, meaning the server would feel even more dead than it currently does.
Mandatory classes are one of those things that I would personally like to see, but not until the teaching factions are improved significantly. When college classes were mandatory, most people only went there because they had to, and instead of interacting with the class they would either roleplay quietly with their friends or just AFK through the entire thing. This is not the fault of the students themselves, but of the professors; most classes just aren't that engaging for the common player, and as such, nobody really cares to roleplay out being in class. A more realistic approach to this would be, "give reasons* for people to want to attend class willingly, so classes don't feel as empty."
*These reasons should not be extrinsic things like class credits or other rewards, they should be fun and interesting experiences, actually engaging roleplay.
TLDR: The problems you aim to solve are (mostly) notable issues, but the solutions you've provided will not work. To fix them, we need to fix our teaching factions.