- Ein "stranger" ist ganz einfach eine Person, die unbekannt ist.
- "Strange man/woman/person" könnte mehrere Bedeutungen haben und eventuell tatsächlich negativ verstanden werden. Daher ist der Kontext sehr wichtig, denn der Begriff "strange" kann "fremd" sowie "merkwürdig", "seltsam", "komisch" bedeuten.
- "Foreigner" hingegen bezeichnet jemanden, der einem fremden Land angehört, also einen Ausländer. Dabei spielt es keine Rolle, ob der einem bekannt ist oder nicht.
In deinem Beispiel ginge also entweder "stranger" oder "strange man", aber keinesfalls "foreigner" (es sei denn natürlich, du willst sagen, der Mann ist Ausländer

).
Wenn du auf jeden Fall irgendwelche Missverständnisse vermeiden will, würde ich "stranger" empfehlen. Ist es aber ganz wichtig, dass das Geschlecht dadurch zu erkennen ist, müsste es dann "strange man" sein.