var [1][126] seems to be the one being set when normal chocobo is being ridden. 0 = no chocobo, 1 = chocobo on world map, 2 = chocobo being ridden. (so when riding chocobo, value is 3 [1+2]). In other words, bit0 is the flag to place it on the map, and bit1 is telling the game if you are riding it. If you ride into an area like highwind or that cave, it will remain ON.
Setting value to 0 (and hence all bits to 0) removes chocobo from world map. This may also fix the teleport issue.
edit.
Confirmed. This fixes the issue. When [1][126] is set to 3, the jump back to world map places you on the chocobo. If the last place that was at is the cave, that's where you'll go. If no chocobo location is set, you'll end up in the sea at world map coord 0,0. This depends on the field you return from. Some jumps back to field will only display the chocobo riding tutorial (and leave the chocobo and character separated), while others will place the character on the chocobo.