Even with the RTC you'll be syncing with network-based time, so why bother with the RTC.
I would use the RTC for time keeping under normal operation, and sync it only once per day or week with NTP (if really needed)
- time based upon millis() has an undefined starting point, so you need either RTC or NTP or both
- you don't want to bother an NTP stratum server for every action you do, they definitely don't like that
- and, it takes serious time to fetch time over NTP.
==> so an RTC is imho preferred over NTP , but the most robust and accurate will be in the mix.
Last but not least the device should be able to log time-entries if the ethernet connection failed, so for that an RTC is also mandatory.