Versuch den SQL mal als SQL-Passthru, d.h., dass Access keinerlei eigenen Konvertierung durchführt.
Wenn das Feld als ZONED definiert ist, kann es bei der Konvertierung zu DOUBLE ggf. zu Problemen führen.

Setze ggf. CA/400 V4R5, besser V5R1 ein, da hier Verbesserungen bei Feldern des Typs DEC/NUM im ODBC-Treiber vorgenommen wurden.

Ggf. kann das Feld auch mit "dec(Feld, 14, 0) as Feld" konvertiert werden, da gepackte Daten von Access besser umgesetzt werden als gezonte Daten.
Wenn das auch nichts hilft, dann Zwangskonvertierung in "CHAR(FELD) as FELD".

Wie gesagt, dies Funktioniert nur als SQL-Passthru.
Wenn diese Abfrage als Parameter-Abfrage verwendet werden soll, dann an der Stelle der Parameter ein "?" einsetzen.
Über die Parameterdefinition kann dann später ein Name vergeben werden.
Wird der SQL aber wieder verändert, werden leider auch die Parameternamen wieder entfernt.