Giann mah... finché la cache è dinamica e hai il loop nel broadcast non risolvi nulla, pulendo la cache, prima o poi il problema ritorna.
mi sembra strano che tu non riesca a rendere statico l'indirizzo arp, dovrebbe essere una operazione abbastanza basilare (e funzionare). hai provato a rendere statico l'indirizzo arp da entrambe le parti (sul pfsense e sui tim hub)?
alla peggio puoi forzarlo con:
lancia un ping dal pfsense al tim hub e verifica che ti risponda usando l'indirizzo arp corretto, altrimenti cancella l'indirizzo ip dalla cache (mentre il ping è attivo).
una volta che ip/arp sono quelli giusti, lascia andare il ping all'infinito, cosi l'indirizzo arp in cache non dovrebbe cambiare (si spera). ammetto che sia una soluzione un po' alla canna del gas, ma almeno il telefono risponde finché non trovi come risolvere definitivamente la cosa.