Just an update here, but a big (actually, gargantuan...) forehead slap by me may be necessary.
I did do logging yesterday afternoon again with two of the previously mentioned devices set to the local time zone of UTC-6, and the third device set to the GMT+0 time zone. And then late in the evening, when I went to download the files, I did not see GPX log files in my tracks directories on any of the three devices. Huh??? Well, it was too late to do anything at that point, but as I pondered the situation, I realized that OsmAnd had not yet written the files to the device. So this morning, I read through the documentation for the trip recording plugin (
http://osmand.net/help/HowToArticles.html#How_to_Record_Your_Movements_in_GPX_Format), and saw the comment that:
"To save track, open Logging services and tap "Save current gpx track". Tracks will never be lost. If they are not saved manually, they will be saved after the next start of the OsmAnd (even if OsmAnd crashed)."
That's when I realized I probably have been using the plugin incorrectly. You see, what I normally did was the following. To start a GPX track log, I would hit the button in the GPX widget at the top right of the screen, and the button would turn red. To stop recording it, I'd tap the red GPX widget button, and choose the "Stop GPX logging" option. You see, I never used the "Save current GPX track" option because I assumed (incorrectly) that on stopping the logging, it would close or write the GPX file on the device giving it the correct timestamp as the file name. And that seemed to be the case because GPX track logs were automagically appearing in my tracks directories. But I now realize they were probably automagically appearing given what is said in the instructions above--i.e. that the current buffer will be automatically saved after the next start of OsmAnd (if it is not manually saved).
So this morning, I recorded a track on the same three devices, and after stopping the logging, I went the extra step of choosing the "Save current GPX track" option on each of devices. Lo and behold, each device saved the current track log with a file name that reflected the local time on the device, but internally, all three logs were recorded with the same, correct Z/UTC+0/GMT+0 timestamp. I will try it again this afternoon, and go the extra step of saving the current GPX track log instead of just stopping the logging. But since it worked correctly this morning, I suspect it will work correctly this afternoon.
All this said, there are still some inconsistencies that I am investigating because they do not make sense--for example, why would the tracks have very different internal timestamps previously? Maybe this is a combination of not choosing the "Save current GPX track option", and also leaving OsmAnd loaded in the background vs. completely closing it with a task killer. By completely closing it with a task killer, the next time it would start up it would automagically save the current buffer as per the documentation mentioned above. But if the app is not completely killed, and logging is resumed later, there may be some internal confusion about the timestamps. I will test this more, but this may be what user Manfred actually stumbled on, and provoked him to start this thread.
There are a couple of observations I make for posterity because they may help someone in the future. The file name of the GPX tracklog is actually based on the local device time, but as an ISO date/time format string. I was assuming (incorrectly) that the actual file name was supposed to be given as UTC+0/GMT+0, too. But based on the reference pointed out by Mihail Kasadjikov, the actual file name of the track log does not have to be UTC+0/GMT+0, only the internal timestamps need to be. In hindsight, this is obvious, but combined with the automagically named files that I thought were being created when I stopped GPX logging (and not by manually using the "Save current GPX track" option), this was definitely not clear. The actual file system timestamp, however, will be reflective of when the file was written to the device. For example, if you start a GPX log at 10 am, and the file is closed at 4 pm (either automagically or manually, as per above), the file system timestamp (not the file name) on the resulting file will be the latter. Again, this seems obvious in hindsight, but combined with what I mentioned before, it only added to the confusion.
I will report back again in a few days after I further examine the issue about the different internal timestamps as mentioned above.