Hey Anil!
I ran into something very similar when we upgraded to MAS 9.1, usually points to a hidden character or an encoding mismatch that the Cron task is chokeing on, even if the manual Data Import handles it fine.
Since you've already checked permissions and paths, I'd double-check the File Encoding setting specifically within the Cron task parameters. Sometimes the Cron environment in MAS 9.1 defaults to a different character set (like UTF-8 vs Latin-1) compared to the manual import tool, causing it to misread the very first byte of the file.
Quick tip: Try opening one of those failing XMLs in a hex editor to see if there's a Byte Order Mark (BOM) or a stray character at the start that shouldn't be there.
Does the issue happen with every single file, or just certain ones?