When we answer this question, we must realize first of all that we cannot truly know the answer for certain. As we look back at the Greeks, we are likely to suffer from “confirmation bias.” That is, we will look at aspects of their civilization and say “that made it so they could not have an empire,” when they could have overcome that barrier and formed an empire. There are so many factors that can affect what happens in the world that it is very hard to truly explain how things turn out.
That said, let us look at three factors that (arguably) prevented Greece from having an empire. The first two of these factors are very closely connected. They are geography/topography and the polis. Greece is a very mountainous country. This made it very easy for them to split up into many little poleis. The topography made it very difficult for any one polis to truly dominate many others. When the Greeks split up into poleis, they made it very hard to unify. They came to identify with their own poleis and were therefore only able to achieve much unity in the face of major threats like that of the Persians. This is in contrast to Rome, which was never split up in such a way.
The third factor that I would identify is Rome itself. If Rome had not arisen, it is possible that Alexander’s Greek/Hellenistic empire would have been more successful in the long term. As it was, the Greeks were outcompeted by the Romans.
Overall, I would attribute the Greek “failure” to geography more than anything else, but we must be clear that there is no way to prove the cause of Greece’s lack of unity.