Pulse the LED current at several KHz.
Filter the output from the sensor to eliminate other frequencies.
Rectify the resulting waveform. It will be proportional to the proximity but far less sensitive to fixed light levels hitting it.
Now you are at more than 20 parts .. and still no reliable function.
Desoldering, soldering another part, another filter, another trial...
Why no microcontroller? It can generate the pulses, with the ADC it can read the signals. The rest is software. No repeated soldering. Add filters, automatically calibrate the circuit. No drift with time, no drift with temperature...
Raise the pulse frequency to about 40KHz, then use a simple high pass filter with a corner frequency of about 30KHz, that should stop interference from other light sources, particularly CFL from passing through. Then simply rectify the resulting signal and either use it directly or feed it through a comparator. If you are using an LM393 you can use one half to generate the pulses and the other to detect the threshold. No need to use a PLL.
In this circuit, the photo transistor will be saturated by bright ambient light. You need a bias circuit that can supply more DC current.
LTR-3208E is already equipped with a solar light blocking filter. Ambient light surepression could be theoretically improved by using a 940 nm interference filter. But it's much cheaper to use a detector and circuit that can handle higher DC light without saturation.
Raise the pulse frequency to about 40KHz, then use a simple high pass filter with a corner frequency of about 30KHz, that should stop interference from other light sources, particularly CFL from passing through. Then simply rectify the resulting signal and either use it directly or feed it through a comparator. If you are using an LM393 you can use one half to generate the pulses and the other to detect the threshold. No need to use a PLL.