The first strategy is avoidance. No word for "you" is needed in either of your examples: ご存知ですか。〇〇さんですか。
In other cases, the prefix 御 (お or ご) serves instead. ご出身は?お子さんが素敵ですね!
In very rare cases where you actually do need to address someone, if you're being formal, そちら can be used in some cases (especially in contrast with oneself - like "and what about you?" そちらは?)
If you can't use そちら (it really sounds formal and distant), the strategies you listed are all okay: あなた is fine towards strangers when you don't have a better way of addressing them; asking for the name is perfectly fine when you don't already know it.
If you forgot the name... it's equally awkward as in any language, I suppose. You can always just bite down and 申し訳ありません、恥ずかしいですが、お名前を忘れてしまいました…? (In an informal situation, ごめんなさい、お名前は何でしたっけ?) Awkwaaard... but quite polite.