Signal processing to demodulate LF RFID
Fundamentally your approach is sound, but there are a few caveats.

First, your "downconversion" is really AM detection.  Since you are sampling every second cycle of the carrier, and hopefully synchronous to the carrier, the end result will be envelope detection.  However, there are traps: 1. You have to sample near the peak of the carrier (to minimize phase noise) and you have to be synchronous with the carrier (to sample at the same point every time).  A simple diode detector might be a lot easier for you - no need for carrier sync, no need to sample so fast, reducing DSP load.

Regarding your pulse width distortion "issue", it's almost certainly the low pass filter. Fortunately, it's easy to verify - simply capture and plot some of the output of each stage. The plots will quickly tell you where/what the issue is, and if you may be experiencing implementation issues such as overflow.