You are right to be concerned. While a NiMH cell can be taken down to 0 V without damage, any reversal of polarity will cause irreversible damage to the cell.
If the battery doesn't contain too many cells in series, this is usually handled by setting as high as possible a voltage limit for discharge, say 1.0 V per cell. If we assume that the cells were reasonably balanced to start with, so the full ones will be about 1.2 V on discharge, that will protect the weakest cell from reverse charge up to about six cells in series.
If you have more series cells than that, or are concerned about the degree of balance in the pack, then you should monitor individual cells, or at least groups of no more than 6 cells.
Another way to anticipate pack exhaustion is to monitor the rate of the fall of battery output voltage. As the weakest cell becomes depleted, its terminal voltage will drop rapidly. You should be able to pick this up with constant voltage monitoring from a uC.
It's not too expensive in circuit terms to monitor all the cells in a battery with opamps (one opamp, one diode, and four resistors per cell). This is a circuit I've built to check my LiPos, illustrated here for a 3S battery, though it's trivial to extend it to any number of cells within the voltage handling of the op-amps. It selects the cell with the lowest voltage for output. You can see from the cell voltages that I was playing around in LTSpice, checking that it did indeed work to select the minimum.
While the checker does draw different sense currents from different cells, the unbalance is fairly insignificant compared to your 0.5 A discharge, and you can always increase the values of those resistors, or even add some large bleed resistors at the cells to cancel the unbalance.
Given your application, telling the difference between 1.0 V and 0 V, there's no need for great matching accuracy in the differential resistor networks, standard 1% resistors should be fine.

Amplifier inputs - Even the opamp monitoring the highest voltage cell is working with inputs at about half the battery voltage, so the input common mode does not need to extend to the positive rail.
Amplifier outputs - With a grounded Vout-ref, the amplifier output low and diode drop define how low Vout can go. With LiPos, that's not a problem.
With NiMH, Vout_ref as ground, with LM324, the circuit as drawn will only take the output voltage to just below 1 V. Switching to schottky diodes would get that to about 0.5 V, which should be enough for detecting end of discharge.
Use a Vout_ref higher than ground if you want to track the lowest cell voltage all the way to 0 V. It would also reduce slightly the unbalance in sense currents drawn from the battery.
I pass on a tip. I built this on stripboard, and found that a dual amplifier (I used LM358) was far easier to route than the quad LM324. However the 358 output only gets to 1 V above ground, which was still fine for LiPos, but would not work at all with a grounded Vout_ref for NiMHs. You would either have to find a dual amplifier that went to ground on its output (not difficult), or use a Vout_ref of a volt or two (probably worth doing anyway).
I can post the .asc file for that circuit. If anybody wants to play around with it without having to re-enter it, just comment.