Where does the Constitution say it prohibits a white person from having the right to buy a CSA flag?
It doesn't. However, it could fall under the Commerce Clause (Article 1, Section 8, Clause 3) if Congress wanted to take up the issue.
My point is, if Wal-Mart, Amazon, Target, et al want to quit selling Confederate flags that's their prerogative. There is no "right" to buy something in the U.S.