First-rate, second-rate, and third-rate
Solution 1:
If you told Prof B that he was second-rate I don't think he'd take any comfort at all from the fact that at least you didn't label him third-rate.
For most purposes, first-rate means "excellent", and both second- and third-rate mean "not good". We actually use second-rate maybe 3-4 times more often than third-rate, but they don't normally both occur in the same utterance unless someone is (somewhat facetiously) saying that something else is even worse than something that was already labelled second-rate.
Historically speaking, third-rate has naval origins - within which context, third-rate ships often actually had the best compromise between sailing ability (speed, handling), firepower, and cost.
But in common parlance no-one thinks like that today - second- and third-rate aren't normally used to indicate different points on the scale of "less than first-rate".
Solution 2:
From the Merriam-Webster dictionary:
THIRD-RATE (adjective) Extremely low in quality or value : worse than second-rate. First known use was in 1814.
SECOND-RATE (adjective) Of second or inferior quality or value : mediocre. First known use was in 1669.
FIRST-RATE (adjective) Of the first order of size, importance, or quality. First known use was in 1671.
Taking into account the above definitions, I would say that it is not optimal to use these words in certain situations when doing an explicit comparison. Instead of third-rate you could use a word such as "tertiary," which implies the third position in a series of rankings, as opposed to "third-rate" which has primarily a negative connotation. This won't work for everything, but it's an idea.
[number]-rate, going by dictionary definitions, does not seem to imply ranking outside of a general measurement of good/mediocre/poor quality.
In your second example (regarding Prof. C) I believe calling him third-rate wouldn't necessarily claim that he is the worst professor, but rather a terrible one in general.