# List of Fallback timeservers separated by ",".
# These timeservers are used for NTP sync when there are
# no timeservers set by the user or by the service, and
# when UseGatewaysAsTimeservers = false. These can contain
# mixed combination of fully qualified domain names, IPv4
# and IPv6 addresses.
FallbackTimeservers = 0.pool.ntp.org,1.pool.ntp.org,2.pool.ntp.org,3.pool.ntp.org
This is our default config ^ and we don't set UseGatewaysAsTimeservers anywhere in /etc/connman/main.conf
On boot (cold or warm) the initial datetime value in the kernel on any device with no RTC chip starts from the libc release date. Once the network is up and NTP runs the initial datetime value is corrected. This approach works fine unless something either blocks or manipulates NTP requests. Most consumer routers with a firewall don't support NTP in the DHCP scope, but pfsense has a deeper featureset and might be setting itself as an NTP source which would override defaults. When you set entries in the LE settings add-on you customise the defaults, but defaults will still be overridden by anything received in the DHCP scope.
Check the clock on the pfsense box; if this is incorrect (has drifted) it would result in propagation of wrong datetime via DHCP and that might explain future dates appearing. It's also possible that pfsense intercepts and responds to NTP requests traversing the firewall regardless of what you configure locally; except for the manual IP configuration use-case where you explicitly tell ConnMan to use a local subnet source; and since DHCP is not used it is not overridden through the scope.
ConnMan events (sources, corrections, etc.) should all be logged and visible in the systemd journal.
NB: The only way to guarantee correct time from the start of boot with an RPi board that has no RTC chip; is adding an RTC chip. As those are cheap and simple to add it's always a valid answer for some people's use-cases (esp. with offline usage).