Nick, both your ckt and the one in reply #11, need a pullup R connected to the "+" input terminal (of the same value as the pulldown), in order to get the op Amps into the linear operating region. What you are seeing in your waveforms is clipping due to the opAmps being DC-biased at ground potential.
Also, the ckt of #11 is pretty much ALL wrong.
when adding the pullup on R3, use 10K to 100K for both.
a gain of 1000X is too high on an LM358. It's GBP [gain bandwidth product] is only 1 Mhz, so at gain=1000, the BW is only 1000 Hz. The gain probably shouldn't be set to over 100X or so, for audio work.
the LPF [low pass filter] on the output kills the signal, as you observed. It has a low-pass F3db = 1/(2*pi*R5*C2) = just 16 Hz.
Low-pass on the very output is an extremely poor way to remove the noise in the system - ie, after the noise has been "amplified" by the ckt. Your waveforms show how much noise there is on the electret signal.
- both in your ckt and #11, and 99% of the time with non-inverting opAmp ckts, you want a low-pass filter cap across the "feedback" R. Especially at higher gain, this both filters noise and prevents the ckt from oscillating. Calculate the cap using the same formula as above,
F3db = 1/(2 * pi * R2 * C) --> C = 1/(2 * pi * R2 * F3db)
For audio, C = 1/(2 * pi * 100K * 5000Hz) = 318 pF, so something between 270 and 470 pF should work. Try items 1 and 4, and you should have a much nicer waveform output.