1) You don't need an inverter. AC couple the input to the comparator, and set the detection levels below the new reference point. However, since you do need some gain to get your signal amplitude up, an op amp (quite high speed) is indicated, and you should be aware that you can typically configure an op amp as an inverting or non-inverting amplifier, so you get inverting for free. However, this will depend to some degree on exactly what your PM device output looks like. A voltage regulator is, well, so far off as a consideration that you need to talk to somebody about why you think it MIGHT be appropriate.
2) A 997 is just about right, since it looks like your pulse width is on the order of 50 nsec at half-amplitude. So you need to talk to somebody about why you think a low propagation time will produce too many samples.
Also, you need desperately to talk to somebody about why you are unable to get a sample 997 to work. Until you do, you are dead in the water.
3)The choice between asynchronous and synchronous is pretty much irrelevant, although the problem of ripple-through delay needs to be addressed for an async counter. Since you don't seem to understand what this is, I'd recommend using a synchronous counter. You will need to provide data transfer to a holding register for transmission and a counter reset once per millisecond. Also, you'll need to address metastability issues during your transfer (what happens if you get a pulse while the transfer is occurring?)
4) Speed is not an issue. Assuming you use 2 bytes per packet (16 bits/packet) your data requirements are 16,000 bits/second, which is much lower than the 2 Mbit/sec you can get from Bluetooth. Of course, you're going to have to learn how to handle this stuff.
As you say, you have a lot to learn. I suggest you find somebody who has a clue and start picking his or her brains. That or read a LOT.
Good luck.
I read that you are using a DAC to generate the sine wave signal. DAC outputs can glitch at the output state changes so you should definitely apply some analogue filtering to the DAC output before feeding it into your comparator circuit. This can help with preventing some of the double interrupt triggers that are likely to be occurring.
I would also comment that you really want to be using an external comparator for this type of problem so that you can apply the hysteresis with resistors without the use of a software interaction. This will also allow better problem isolation since you can directly monitor the output of the comparator.
Last comment relates to the type of hysteresis you are using. It is a bit hard to see exactly what scheme you are using but note that what you want is behavior that does this: You want the hysteresis that pulls the threshold voltage in the OPPOSITE direction than the signal is transitioning. So for a rising edge you want the threshold to be a bit higher than the zero point and then when the state changes the threshold gets pulled to a lower level.
Best Answer
Yes, you can do this, if the bandwidth of the low pass filter is appropriately low to achieve stability.
This will result in a PWM output of variable timebase at the comparator output. As you get closer to 0% and 100% the timebase will get arbitrarily long. The frequency will also be greatly affected by the hysteresis (you need some hysteresis or the frequency will be too high and other effects will likely cause issues).
You can also operate some comparators in a linear mode, as Andy says the LM339 is one of the few that allows this because there are not intermediate stages inside that require access in order to add compensation-- in this case just adding a BFC (Big "Fat" Capacitor) to the output as explained in this document.
Limitations include low bandwidth and poor current source capability due to the open-collector output and R3.