Why photon doesn't have antiparticle?
A photon is its own antiparticle.
Charged particles have antiparticles with the opposite charge. They annihilate each other on contact. The result of the annihilation is often a pair of photons.
Some force carrying bosons such as the photon, Z and gluons have no charge. They are their own antiparticles.
In fact a pair of high energy photons can annihilate each other to produce other particles such as an electron and a positron. As long as mass-energy and momentum are conserved by the process.
In particle accelerators beams of high energy particles are collided with their antiparticles to produce other particles. As charged particles have photons associated with them, photons actually annihilate each other and contribute to the particle production.