While Warren Buffett prefers to hold rather than sell stocks, he will sell when he thinks a company’s "long-term competitive advantage" has weakened.