UPDATE: This turned out to be fixable by tweaking the FIT files created by RunGap. It will be fixed in version 2.32. Whoops ;)
When uploading new workouts to Gamin Connect either through their website or using RunGap, Garmin Connect will normally determine the correct timezone for the workout based on the GPS coordinates along the route.
For indoor workouts with no GPS data or virtual rides/runs for which the time zone can not be determined, Garmin Connect is supposed to use the time zone chosen as "Upload Time Zone" under "Display Preferences" in your Account Settings.
Recently users have started to report that this no longer works and indoor workouts are sometimes assigned random time zones when uploaded via their website or RunGap. The result of this is that the starting time will be wrong and sometimes also the date.
You can easily check if your are affected by this issue by manually uploading a workout with no GPS data via the Garmin Connect website.
Hovering the mouse over the workout on their website will display the time zone that Garmin has assigned to the workout like in the picture below.
In this example the "Upload Time Zone" was set to "(GMT+01:00) Central European Time" - but the workout was assigned "(GMT+04:00) Armenia Time" :(
If you are affected by this bug then please report it to Garmin and ask them to fix it.