In absence of an answer of David Arno, who first emitted the hypothese, here a summary of the findings.
It appears that the first programming language that offered underscores as digit separator in numeric literals was Ada. No evidence of a prior use in another language was found.
Its use in Ada & historical evidence
In the paper *The rationale of the design of the Ada programming language, published in June 1979 by Ada lead designer Jean Ichbiah et al., the feature is justified page 2-3:
The underscore is permitted within a number to break up long sequences of digits, a requirement that has long been recognized by printers.
This is an original proposal of Ichbiah and his team since there is no such explicit requirement about literals in the Steelman requirements published in 1978 by the DoD. But the feature addresses the readability needs for maintenance (requirement 1C).
The feature is included in the grammar of the first proposed Ada standard, published in July 1980 (section 2.4.1).
Use in other language
After some hours of intensive research, I have found no evidence of prior usage of this feature in any other language:
A (very) critical review of Ada programming language, Hidden costs in Ada by David A. Bennett, Brent D. Kornman and R. Wilson, published in May 1982, criticised this feature as an unnecessary luxury that would
The increased visibility of a number resulting from use of this technique does not seem to be worth the cost of learning the rule or scanning for it. (...) the use of underscores in digit strings is unnecessarily inconsistent with their use in identifiers, adding gratuitous complexity to the language." (sic!)
other more recent extensive analysis didn't find prior usage: for example this article here mentions Ada and Perl as forerunners. But Perl appeared only in 1987 and it is not clear if that language had already the feature at that time. Another analysis by the Python designers also cite as oldest language providing this feature Ada.
It's not scientific evidence, but Wikipedia mentions 12 languages that now have this feature, to which you could add Fortran that accepts whitespaces as digit separators and C++14 that uses apostrophes for the same purpose.
Of course, it is not impossible that older usage existed before Ada (e.g. in less popular languages), but no evidence could be found.