Question 1:
No, "Do you have English" is not correct.
It could however be argued that it's part of Hiberno-English and thus acceptable. Either way, learning to say this isn't advisable.
Question 2:
One expects this structure to be exclusive to Ireland, where it is commonly used (especially in Western regions).
Why?
As Ireland transitioned from being Irish-speaking to English-speaking, certain words, phrases etc. were naturally carried over, but also syntax.
The standard way of asking this question in Irish is:
An bhfuil Bearla agat?
The literal translation is:
"Is there English on you?"
However, because there isn't a word in Irish equivalent to "have"*, this same syntax is used and this could equally be translated as:
Do you have English?
This persisted and is still in use today along with many other examples that sound perfectly natural to an Irish person but strange to anyone else.
*Or several other obviously useful things like "Yes", "No", or "Thanks"