That's more an exclamation of sorts than a question... As a question, it needs the verb auxiliary "do"
That's more of a question of surprise or asking for confirmation. It could be a correct translation if the Spanish was intoned that way, for example, "Tienes una esponja?". This could be used in a context like "Wait. You have a sponge? WHY DIDN'T YOU TELL ME THAT BEFORE?!", but in English, to ask the more typical kind of question, just asking whether the person has a sponge or not, you would need to say "Do you have a sponge?".
Have you a sponge? is grammatically correct in English. You don't need to include the word "Got". Saying it's incorrect & missing the word "got" is not correct. Maybe you need some English, English speakers.
In modern English "Have you a sponge?" is a dialectical variant that you are most likely to see in the UK. That kind of construction is not present in North American English, which has become the international standard.
So you're right that it's correct in a descriptivist sense, but I wouldn't teach it to a class expecting a prescriptive English grammar lesson.
It appears that DL now accepts that do and got are unnecessary. If you don`t have a sponge you can get one. Then you will have got one and you will have one. I have a sponge is simpler, more elegant and has more class. It is also how I was taught at school.
The "have" in "I have a cat" and in "I have got a cat" aren't the same.
In the first sentence, "have" is a verb that means "to be in possession of".
In the second sentence, "have" is an auxiliary verb that forms the present perfect tense.
"Have you (verb in past participle)?" is the grammatical construct I was taught in school. "Have you a sponge?" is missing a verb (in this case, "got").
Most of the time when people say "Have you (thing)?" on the Internet, they meant it as an euphemism of "Have you had sex with (thing)?"
I didn't dare write 'have you got' even though that's the normal way I would have asked this.
What does tienes mean? ITS DO YOU HAVE, I DID Do you have a sponge AIEM KAWEKT
'Tienes' means 'you have', but if you use it in a question, you have to put 'do' in front. 'Do you have a sponge?'
Esponja and Espejo sound very close to each other. lol, I found that cool!