I don't have any experience using DTMF on HF but back in the day before satcom, commercial marine HF SSB coast stations used a dual tone selective calling system made by Lorain Electronics. The encoder used 11 tones, one each for the digits 0-9 and a carrier tone. Each digit was transmitted along with the carrier tone and the difference in frequency was detected to decode the digit. This compensated for small frequency variations. These worked very well. You could probably do a similar thing with a single row or column of DTMF if you didn't need more than 4 digits.