Je ne vois pas pourquoi il faudrait le dire et s'en excuser... Les gens sauront que vous n'êtes pas français/e et si votre accent est tres prononcé et s'ils ont l'habitude d'entendre des étrangers les gens sauront que vous êtes américains/ es, ou bien ils essayeront de deviner votre nationalité. Sinon ce renseignement sera donné au cours de la conversation sans doute. Aucune raison de dire "désolé/e je suis ...."On peut dire, "désolé/e ', je ne parle pas bien français; ou bien je ne comprends pas bien..."
Il n'y aucune raison de s'excuser de sa nationalité. Je connais beaucoup de français qui sont très curieux et essaient de deviner d'où viennent les gens qu'ils rencontrent, ce qui donne l'occasion de continuer la conversation...et leur donne l'occasion d'essayer de parler anglais.