Based on what history tells us, Alexander the Great was never defeated by anybody. Chandragupta Maurya only succeeded in reclaiming territories that Alexander left in the care of his troops. Although, Chandragupta Maurya was a great fighter and he had thousands of soldiers under him.
History says Chandragupta Maurya had a special facility where weapons were being made, and this made him be a very strong force. He was able to fight with troops that were stationed to monitor Indian territories that were conquered by Alexander, and he won the battle. Going by history, Chandragupta Maurya never fought with Alexander. The only king that resisted Alexander was king Porus.
King Porus, together with other regional troops, fought with Alexander and resisted him to the point that it took bravery before Alexander was able to conquer them. To me, since the fight never happened between Alexander and Chandragupta Maurya, I don't think he defeated Alexander.