How to detect a heat emitting object in a distance from 10 - 50cm?
Consider that whatever you use for measureing heat, the reading will likely diminish with distance. Thus you should not try to use a heat sensor alone to measure distance (unless the object is of an already-known constant temperature). 

They make pyroelectric sensors ("non-contact infrared thermometers") for absolute readings. However, I've found that they typically have a wide viewing angle, which can cause trouble when you wish to pin-point heat.


The MLX90614 is an example that I think measures with a 45 degree cone. So as the measuring distance increases, the measurement "area" increases. Thus a small, hot object can be "washed-out" by nearby cooler objects. Thus you may need to put "blinders" around it for a more precise measurement, though the blinders will still lower the average reading.
See below for a very technical diagram:


As Jack Creasey mentioned, pyroelectric sensors (the kind used in motion-detecting PIR (passive Infrared) modules) will detect IR heat. However, the ones Jack posted are for heat differentials, (movement of heat). Each unit actually contains two IR heat sensors inside, right next to eachother, and the unit measures the difference between them. So when there is heat movement, their output changes. However, they are very affordable ($1-3).

What's a maker to do?

A cheap hack would be to cover one side of a PIR sensor unit's window, so that only one internal sensor can see. This gives a more "absolute" value to the readings.

   

See this blog link on getting absolute values from a PIR sensor.

Note that I have personally tried the methods described in that link above for the purposes of measuring body heat. I was not very successful at detecting a person from more than a meter away, and I also noticed that if I held a hot object in front of the sensor, the output would slowly decay back to the baseline over a course of ~30 seconds. Thus pulling the heat source away caused the sensor to report a negative reading until it normalized again. 
Results will of course depend on the temperature of the object being measured, the object's emissivity, and the sensor model (I tried using the PIR_D202X and the PIS209S.) Oh, and I didn't use a fresnel lens, that could make a difference too.
Below is the output of my foiled-PIR sensor test when I waved my hand in front of it (maybe 10 inches above):

That data was aquired with no futher hardware or software changes to the signal. There were about 22 levels of quantized output. Notice how the output drops below the baseline immedietly after the heat is removed.

To further increase the sensitivity, a reflective dish (perhaps parabolic) would increase the amount of radiation on the sensor. Some IR is lost upon reflection, but smooth metal, even aluminum foil, will reflect a good amount.
See below for another state-of-the-art diagram:


If you don't need actual temperature readings, and instead just need to detect something above a set temperature, you could try an IR flame detector. These are typically sensitive to IR emitted by CO2 (IR wavelength of 4.4μm). Here is a cheap IR flame sensor. While it's labeled with a range of 760nm~1100nm (0.76μm~1.1μm), the sensitivity is adjustable, and you may be able to tune it to trigger around a certain set temperature. It has both digital and analog output. You would probably need to use the analog output to trigger a digital comparison.


IR heat varies in wavelength. I can say that many IR thermal cameras tend to be tuned in the range of 7μm~13μm. This range covers the typical heat emitted from animals and common objects. The MLX90614 sensor from further above is senitive in the 5.5μm~14μm range.