Just one final thing to add to this.
I've done some playing in the mapbasic windows in MI15 actually looked at the DAT file in a hex editor, and mi 16(64bit) is storing it as a 1 and a 0.
I guess it must fall back to the fact it's a modified version of the DBF database format, where Logical fields are stored as a Byte, with a default value of " " and possible values of T and F
http://www.dbase.com/Knowledgebase/INT/db7_file_fmt.htm I've really got no solution beyond saving it as an int and letting the database driver handle the data translation. (i've tested this with OGR2OGR and it works, I don't have the postgres ODBC driver installed so couldn't test it with Easyloader though)
You might even get away with this in any mapbasic scripts you run as an integer should still match the 0 and 1 which as you pointed out are the defined values for TRUE and FALSE