Let's consider the 4 possibilities that require no assumptions beyond:
- What is stated in the text
- What is known from Greco-Roman history
What languages did working-class Galilean men speak?
Aramaic, Hebrew, and Greek--see appendix for arguments to this effect
Greek was the lingua franca of the eastern Roman Empire--see this post for a map of the locations referenced in the OP. Greek was widely known east of the Roman Empire as well thanks to Alexander the Great. If you were addressing a diverse crowd in the Eastern Mediterranean, Greek would be the best bet for making sure you were understood.
But did Peter speak Greek? Most definitely yes. Porter (here), Sevenster (here), and others have made this point exceptionally well. Surrounded by the cities of the Decapolis, a man like Peter who sold his wares on the trade route running through Capernaum would have to know Greek.
To Perry Webb's point made in another answer, Peter probably had little ability to write in Greek--he certainly didn't write the Gospel of Mark, which Papias of Hieropolis indicates came from Peter's preaching (see HE 3.39). And he almost certainly would have used a scribe/amanuensis in composing letters (see discussion of amanuenses on this site here).
Zahn maintained that it would have been impossible for the early
Christian leaders to have fulfilled the immediate duties of their
office, such as are described in Acts 8.14-25 or 9.32-11.18, let alone
done anything beyond Palestine, 'without a good deal of readiness in
speaking Greek' (As quoted by Robinson here p. 123)
For sheer purposes of utility, Greek would be the most practical language for Peter's sermon on Pentecost.
The audience was made up of Jews & converts to Judaism. Most (albeit not all) who received a traditional Jewish education would be familiar with religious Hebrew. Those living in regions near the temple would have spoken Hebrew in other settings as well.
For a religious discourse, Hebrew would be appropriate but not necessary. If Peter were addressing natives of the area, Hebrew would have a higher probability. Given the widespread origin of the audience, Greek would have been more effective than Hebrew.
Consider the evidence of Acts 22:2, in which Paul addresses the crowd in Jerusalem in Hebrew--they were surprised because they thought the address would be given in Greek.
But did Peter speak Hebrew? Most definitely yes. See the thorough analysis by Frank Luke on this site here.
That Aramaic was spoken in Galilee has never in recent centuries been in any serious doubt. Multiple Aramaic phrases are preserved in the New Testament (e.g. "talitha cumi"). Peter would have no difficulty giving a sermon in Aramaic.
The trouble is, much of his audience would have had difficulty understanding him (e.g. people from Rome, Crete, etc.). For this reason I suggest that Aramaic is less likely than Hebrew.
Of course, if Peter did give the sermon in Aramaic, the gift of tongues (or as some would more specifically state--the gift of interpretation of tongues) could have made his words known to the audience. Peter could have spoken in Aramaic, but Divine intervention would have been needed.
4. Another language not naturally known to Peter
That the gift of tongues was operative that day is clearly stated in Acts 2:4. So any language is possible, but if the goal were to enable the audience to understand the sermon, no human language would have been more effective than Greek.
I have listed the possibilities in the order I consider most to least likely. Greek or Hebrew are possible from Peter & the audience's own knowledge. Aramaic (or literally anything else) is possible if the understanding was gained through the gift of tongues or the gift of interpretation of tongues.
The segue introduced by Luke in Acts 2:13-14 suggests to me that the gift of tongues effectively got people's attention--though some of that attention was negative--and then Peter proceeded to demonstrate that there was no drunkenness or trickery going on, by addressing them plainly--in Greek.
My own observation of the way God uses miracles is this: He uses them to bless people, not merely to impress people. As a good Father He lets people do the best they are able rather than always doing everything for them.
Perhaps the gift of tongues served to bring the crowd; perhaps it continued to operate for the duration of the sermon. My leaning would be that if Greek could get the job done, God may very well have just allowed Peter's sermon to proceed in Greek.
Either way, the Holy Ghost served to enlighten people's understanding throughout Acts chapter 2.
Appendix--the trilingual world of Jesus
Although it has been commonplace in recent generations to suggest that Jesus, Peter, and others of their socio-economic status spoke only Aramaic, the evidence supporting the claim is remarkably fragile. Why have many scholars concluded that (Mishnaic) Hebrew was not spoken in 1st century Galilee? It's a claim oft-repeated but seldom argued from the evidence. Baltes offers a trenchant criticism here of the assumptions that led to this conclusion.
There is a modern myth that only extremely well-educated people speak more than one language (this myth is particularly popular among Americans--I can say that because I'm an American!). This is a sampling error. Past & present, most human beings--educated or not--have spoken more than one language. Greek did not become the lingua franca of the eastern Mediterranean until Alexander. English did not become the lingua franca of global business until the economic heyday of the British Empire.
The New Testament speaks several times of people speaking "Ἑβραΐδι". Interpreting Ἑβραΐδι as "Aramaic" worked in a scholarly world that assumed Hebrew was not spoken. The evidence of a living Hebrew language at the time of Jesus has invalidated the Aramaic interpretation.
In a region in which Aramaic, Greek, and Hebrew were spoken, "Ἑβραΐδι διαλέκτῳ" would be a plausible way to say "Hebrew", but would not be an effective way to disambiguate Aramaic. Buth & Pierce have recently argued cogently that ἑβραϊστί and related words were never used to refer to Aramaic. (see R. Buth and C. Pierce "Hebraisti in Ancient Texts: Does ἑβραϊστί Ever Mean 'Aramaic'?")
For a high-level discussion of the uses of Aramaic, Hebrew, and Greek in Jesus' milieu, see my thoughts on this site here. For a much deeper dive, see this video on my channel: What languages did Jesus speak?