Reasons for iOS system time jumping backwards on an iPad while being offline

Solution 1:

The RTC clock is "tweaked" periodically to correct its time (for example to account for clock drift) - this happens no matter if you're online or offline. This is standard on modern operating systems, not just iOS.

The bug is not in your operating system, but in your app. If you want a monotonically increasing clock, you should not be using System.DateTime.Now.

In order to select the correct timer/clock function for your app, you need to determine what you want to use the time for - and then select accordingly. I.e. it is a very different need to want the current time to display to the user in a "clock app" compared to needing time to run a timer that will fire every 50 ms periodically in a game.