Does the prefix of an inverted unit also get inverted? What is the energy of radiation that has a frequency of $\pu{2.51 \times 10^11 ms-1}$?
(a) $\pu{1.66 \times 10^-19 J}$ (supposedly correct)
(b) $\pu{1.66 \times 10^-22 J}$
(c) $\pu{7.92 \times 10^-37 J}$
(d) $\pu{1.66 \times 10^-25 J}$

My argument was that: since $\pu{Hz} = \pu{s-1}$, then $\pu{ms-1} = \pu{mHz}$. So, I divided $2.51 \times 10^{11}$ by $1000$ and solved the question normally (using $E = h\nu$). But my professor said that since $\pu{m}$ is a prefix, it should follow whatever is in front of it, so $\pu{ms-1}$ will become $1/\pu{ms}$, then you multiply it by 1000 to change it to Hz. Is that the correct way to do it?
You should read $\pu{ms-1}$ as $(\pu{ms})^{-1}$ and not as $\mathrm{m}(\pu{s-1})$. Your teacher is correct.


  [...] since $\pu{Hz} = \pu{s-1}$ then $\pu{ms-1} = \pu{mHz}$


This is incorrect. 

If something happens once per hour, it happens less often than when it happens once per minute. This is because an hour is longer than a minute. In a similar manner, if something happens once per second, it happens less often than when it happens once per millisecond. This is because a second is longer than a millisecond.

So $\pu{ms-1} = \pu{kHz}$, i.e. the frequency of something happening every millisecond is larger than the frequency of something happening every second.