Allerdings habe ich da für ODBC noch einen Hinweis gefunden:

Unicode fields, which are the data types with a CCSID of 1200 (UTF-16) or 13488 (UCS-2), report to ODBC 2.x applications as SQL_CHAR, SQL_VARCHAR, and SQL_LONGVARCHAR instead of SQL_WCHAR, SQL_WVARCHAR, and SQL_WLONGVARCHAR.
ODBC data types and how they correspond to DB2 UDB database types

Woran der Treiber nun allerdings den Typ (2.x oder 3.x) erkennt weiß ich nun auch nicht.

Zumindest bist du mit dem Problem nicht alleine (ich habe das bisher tatsächlich nicht gemerkt).

Die Konvertierung erfolgt bereits durch den ODBC-Treiber, da der MSDASQL-OLEDBTreiber wohl noch aus ODBC 2.x-Zeiten stammt.

Ich habe auch keine Einstellung für ODBC 3.x gefunden.

Dir bleibt wohl nur der IBMDASQL (IBMDA400 ist der selbe Treiber).

Excel selber meldet sich wohl als ODBC 3.x am Treiber an, so dass nicodedaten korrekt geladen werden.
Fülle doch das QueryDef auch mit dem SQL und lass Excel die Daten selber laden.