Enhancing Large Language Models' Situated Faithfulness to External Contexts