How can I make a mod for VGA cable to display only grayscale or Black & White?
You do not need an FPGA. The pinout of the VGA cable can be found in lots of places.

As you can see there are three separate signals. You could combine them to a single "white" signal and then re-connect that to the R/G/B pins, following this example: VGA to composite circuit. Does it work?

Changing the refresh rate is more complicated since that's entirely under the control of the sender. It's based on EDID. What you could do is disconnect the I2C lines from the target monitor and route them to an EEPROM or microcontroller of your own, which would then send back only the data for those video modes that are in 30Hz.

24Hz seems rather too low unless it's interlaced?