It does seem clear that any US Citizen who has earned income can contribute to an IRA. I can’t see anywhere that says the earned income has to be sourced in the USA. Looking on the irs.gov site I don’t see anything other than it has to be earned income. I have never been in this situation while living in England so never thought about it before.
An AI search also says this.
AI Overview
Anyone with taxable compensation (earned income) can contribute to a Traditional IRA in 2025, regardless of age or income level (though high earners might not get a tax deduction), while Roth IRA contributions have income limits based on your filing status, with full contributions allowed for single filers under $150k MAGI and joint filers under $236k MAGI, phasing out above those levels. Both types have a $7,000 contribution limit for 2025, with a $8,000 catch-up for those 50 and over.