How long should the battery last in my key fob?
Mine lasts around 5 weeks before I need to replace it.
Does the battery last longer if I drive with the keys in the ignition holder rather thasn in my coat pocket?
A brand new battery in any car's fob should last at least a couple of years. My Fiesta's fobs are now 5 years old, still on their initial battery, still going strong. In my CX7 I had to replace the batteries in both key-cards after 7 years.
Where you keep them should have little to no effect on battery life. In your fob's case, there's probably a leak/shortage that eats away at the battery's lifespan.
When I had my kuga in December 2017 I put new batteries in the 2 key fobs,,not had to replace them yet.( i put new batteries in when I had the kuga to be on the safe side,,I suppose the original batteries would have been ok) I use Panasonic of Amazon pack of 12 £5.90.(when I took the kuga in for a service they tried to charge me £17 for a key fob battery,,I ask does it need a new battery,,was told no but we always ask,,,how many people have fallen for that).
I'm in a different camp from some here. Yes, buy a "known make". But I always buy a multi pack from Amazon, last pack of 10 cost me less than a fiver... They were put into my fobs about 12 moths ago and still fine...