How can I support product prices which have a precision greater than the currency's minor unit in Drupal Commerce?
Commerce allows to define the amount of decimals per currency in hook_commerce_currency_info, defaulting to 2. So you could implement hook_commerce_currency_info_alter and change that for USD.

However, due to the way prices are stored (with decimals set to 2, $5.00 is stored as 500), this will affect all existing prices, so when you change it e.g to 4 decimals, then $5.00 will now just be $0.05.

So, maybe you could instead set up a virtual currency with the same name and as many decimals as you want and then let Commerce automatically handle the conversion to USD during payment.