Looks like the most widely used Portuguese demonym is Americano/americana. Which would be “American” which is correct.
There’s also the term “Estadunidense”, which would be “United Statesian” in English, which obviously is not a term used in English at all, but it is accurate nonetheless. If you don’t like the term American and wanted to use this one instead, I don’t think anyone would mind.
North-American would be meaningless as a country’s demonym because there are 3 countries in North America and a number of other non-continental nations and territories. North-American refers to all of them, not a single country like the United States. Mexico, the USA, and Canada are all North American, but they’re not all citizens of the United States. It would be like using the demonym “European” to refer specifically to Portugal.
The culture of the people who live in a place takes precedence over the culture of people across an ocean lol.