I constructed a non-symmetric BCH code with specifications $\mathcal{C}:=[511, 18, 240]_2$, where $511$, $18$, $240$ represents the length, dimension, and minimum distance of the codebook $\mathcal{C}$, respectively. So, there are a total of $262,144$ codeword in the $\mathcal{C}$. Now, out of these $262,144$ codewords, I found that $69496$ codewords have a weight of $240$; $131327$ codewords have a weight of $256$; $61320$ codewords have a weight $272$, and one codeword has a weight $0$. To remind you, the weight of a codeword is the number of $1's$ in the codeword.
Now, my question is: What is the mathematical reason behind this weight distribution that I saw in my experiment? Can we mathematically predict the weight distribution of BCH codes based on the parameters $[n,k,d]_2$?
Your term "non symmetric" is not standard, you need to define it in the question.
In general, BCH weight distributions are unknown. There are some known cases. For example for narrow-sense and primitive BCH codes. Look at this paper and especially its references.
There is a sense in which the weight distributions of BCH codes as well as other codes is asymptotically normal, i.e., actually approximated by the cumulative gaussian distribution. See Section 3 of this paper for an informal discussion.