First, I had what seems the same issue for years till it got so annoying I tracked it down.
The result of that was surprising: There can be only few WPA-EAP installations using linux with hostapd without freezes at the 1h mark if there is traffic at that time:
Hostapd is automatically rekeying the PTK key when using EAP after 1h. And PTK rekeying can best be described as "mostly broken". (I found much more broken devices/drivers than working ones! And not only for Linux... long story.)
So when this interval is not manually set WPA-EAP will rekey the PTK key every hour while WPA-PSK will just continue using the initial key. Therefore nearly all setups will work fine with WPA-PSK but get 1h long connection freezes or reconnects after 1h when you use EAP.
Disable PTK rekeying for EAP - eap_reauth_period=0
in hostapd.conf - should solve the issues you have. On my Openwrt AP (now tracking git master) I set it via:
uci set wireless.wifinet0.eap_reauth_period=0
uci commit
wifi
My AP can now rekey the PTK correctly, but simply all Android devices I have are not. Therefore I still have either very high rekey intervals or disable it.
If this seems to be not working double check that the key is indeed not rekeyed. (Normally it's triggered by the AP, but a STA can also request it.)
PTK rekeying relly is something you better avoid, even when using APs able to handle it. I got it working with ath9k and iwlwifi but both the AP and the STAs must use mac80211 from >= linux 4.20.
If you want to know more:
Here is the intro to patch set which got that from "mostly broken" to "mostly working" for mac80211 drivers:
https://marc.info/?l=linux-wireless&m=153572160619006&w=2
Hostapd/wpa_supplicant patches to complement the patch above are not yet available.