Well, I found the reason of this issue, but I don't know how to fix it.
Exact the same site on a localhost testing board works perfectly, but on the live server ANY html page/ ajax call etc,
has a useless empty line as line #1.
For normal html pages, there is no reason for the browser to retun an error, but when we're talking about an ajax call, this empty line at the top of the response, breaks the xml parsing from the browser.
So it seems it is a server/ PHP/ Apache setting that applies this empty line.
Any idea how to fix it?