Thanks to everyone for the replies and ideas.
As far as what happens each Sunday night that might be causing the issues, that was the first thing I asked our IT manager. We have a full server backup process that runs on Sunday. This process was running before I installed 4.8.4 and wasn't causing any issues with the older version we were using (4.5.1).
That's an interesting note about the order of installation for the .NET patches. Our server is only running .NET Framework v2.0.50727. 3.x is not installed. I don't know that last time .NET was touched -- as far as installing a patch or update -- but it was probably a while ago.
Since the 4.8.4 upgrade, I also noticed occasional unhandled exceptions being reported in our Application Event Log. Usually, these are IndexOutOfRangeExceptions, with a variable message; often PropertyDefinitionId or ProfileData.
Since hitting DNN's "Restart Application" link always clears up all of the problems on Monday, I set up a scheduled task to update the modified date and time of the web.config file every night, which in effect restarts the app. Since doing that I have not seen any more unhandled exceptions in the app event log. I will check in over the weekend and on Monday to see what happens.