Because Welsh is the first language of many people, its taught in schools, not speaking Welsh might be more common in the cities to the south, but not the rest of Wales. Welsh is one of the oldest European languages, what a road sign says in English isn't what the place is called in Welsh, often the meaning is completely different and gives a totally different context. For example, Holyhead in Welsh is Caer Gybi, or Ynys Cybi originally named for the small Roman fort looking out towards Ireland in the 6th C it was given to Cybi a Cornish churchman who established a monastery there hence it is know either as Cybi's Fort or Cybi's Island. One of the peculiarities of the Welsh language is the change in capital letters in some circumstances.
The English name for the place gives none of this sense of time and place, its not a translation or even much of an Anglicisation, its just a name convienient to English speakers dumped on a place with no real reference to the original.
I know a lot of people do share your view thats its an unessercary expence, but its not a view I share and I think lots of people like seeing it, its a bit of a game trying to work out how to say the names.