> why should US taxpayers subsidize a service for which non-US citizens could get a benefit from without paying any taxes?
Because US citizens would benefit? Preventing outsiders from incidentally benefiting isn't a constitutional mandate (yet).
Would you oppose an anti-pollution measure even though it would also provide cleaner air to neighbouring countries?