Resistor values for class D amplifier
This circuit will NOT work for four reasons.


Your using an earphone as a microphone. Spend a buck and buy a condenser mike, which needs a 1.5 volt bias through a 2 K to 10 K resistor.
Your signal from the microphone needs to be amplified at least 100 times to 1,000 times. Use a quiet TL072 op-amp
The source waveform for the comparator needs to be a perfect triangle waveform of about 300 KHZ to 500 KHZ.
Tying in with that issue is that you need a very fast comparator, such as the LT1016 (5 nS)
After those changes then you can fine-tune the output stage, which is very reactive to load changes, etc.


EDIT:

Vcc should be +15 volts, just to make the op-amp work and drive the MOSFET's to saturation. The (-) input of the op-amp should go to the 200 pF cap on the 555, where you have a crude triangle waveform. See if the LM339 will work first, as it can be powered by 15 volts on Vcc. The LT1016 needs +/- 5 volts rails, not enough to drive the MOSFETS.

Rg and Rv should be 100 K each, then add 1.5 volts to the microphone side by using a 22 K to +15 volts and a 2.2 K to ground, tied in the middle to the mic input. This will give the mic the 1.5 volts it needs.