People click through search results really fast. "XYZ alternative" would be much more acceptable if it came after the real name, but putting "XYZ" as the very first word is guaranteed to cause confusion.
Hopefully the metrics show that the latter is mostly happening.
It's only fraud if the advertiser counterfeits XYZ's brand on their website.
The ad can violate trademarks even if the site behind the ad is squeaky-clean.
If putting the other brand name first causes consumer confusion in certain places, that's a problem, even if they're not lying or even doing it on purpose.