The solution is Patreonpoints. Sell vouchers and let supporters allocate those vouchers, lock the exchange rate to the currency used to purchase the vouchers and build the service fee into that exchange rate.
Steam does some something similar with an account balance but I don't think it refills. I believe a lot of businesses have a similar concept. I think you can maintain an account balance at Amazon (and probably other retailers) too.