American number one Taylor Fritz overcomes an unexpected third-set capitulation to beat Karen Khachanov and reach the semi-finals of Wimbledon for the first time.