What is the background story behind why this specific burn address was chosen?
We thought it would be obvious that no one could possibly know the private key whose public key hashed to all 0’s. Calculating any value X such that ripemd160(sha256(X))) == 000...000 is computationally intractable.
Why is a burn address used in addition to OP_RETURN?
Not sure. When I was getting started in 2015, I didn’t know that you could send BTC to an OP_RETURN output, so that might have been the reason.