As Newman says, it could be related to your pressure regulator. Icing can occur that will cause the regulator to deliver lower pressure. Your water heater will work because it has a pilot that "bathes" the thermocouple in flame, so it can operate at lower pressure. But, if you don't have enough pressure to get an initial flame big and hot enough to heat the thermocouple/flame detector in your furnace burner, the furnace won't light or stay lit. You might try heating the gas regulator and gas bottle valves (warm towels, hair dryer) and see if it makes a difference. Doesn't cost anything to try. Another reason I suggest this... I just replaced the pilot assembly on a gas fireplace. I had the glass front panel off of the fireplace, and attempted to test the operation. It appeared the pilot flame was covering the thermocouple and thermopile just fine... but the darn thing would shut off after a few minutess of operation. The fix was to put the glass panel back on, which slowed the draft through the fireplace, and allowed the pilot flame to keep the two thermal elements heated properly. I've concluded these thermal flame detectors are a bit finicky or at least sensitive (they only generate millivolts), and you need to check anything that can inhibit their operation. I doubt your bottle pressure is low, but there is a chance the line pressure is low in cold weather, and it doesn't cost anything to try and remedy gas bottle valve or regulator issues. I'd sure try this before I started ordering parts (well, practice what I preach.... I always order parts and now have plenty of spares!) This might explain why you get a flame, but it isn't supplied well enough to get hot enough to keep the furnace from trying to relight.
Steve