Why does this happen?....Low capacity water heater tank. Water heater temperature set too low, allowing you to open hot water side of shower full blast. Rise temperature of water heater or shut water off after getting wet when showering and on again...you got the idea.
A 30 gallon heater can be cycled in less than 20 minutes---meaning the entire 30 gallons of hot water is used`---and the useage flow is high enough to prevent the incoming water to be heated.
If the problem is new---meaning the water heater is sized correctly for your family, and the heater is electric, one of the heating elements has burned out or one of the element thermostats is not working.
If the heater is gas, the thermostat could be malfunctioning.
If this an older water heater and you have hard water, there could be a build up of sediment in the tank. This would decrease the capacity or if it's a gas water heater it would increase the recovery time.
Considering your area you may have an oil-fired water heater. If it is gas or oil fired you could stand near it when it is in use and heating the water. If you hear rumbling or big bubbling sounds it means you water heater has too much sediment in it. A water heater (of any kind) is designed to last 10 years; if you got 20 years of service from it count yourself lucky.
Another problem this time of year is the water comming in is near 35 degrees and it takes a lot more heat to raise the temp to 120 (the Kentucky definition of hot water). Caution; do not set the temp above 140 degrees--danger of instant scalding!