Formal wear at established physical stores typically costs between 300 and 800 euros, so there's room to not break the bank. I'd say the best approach is to combine two strategies: first, go to shops like El Corte Inglés or more affordable chains like Carrefour or Alcampo that usually have decent formal suit sections. Buy during sales if you can wait (there are usually markdowns in January before your March wedding). The important thing is to try it on in person because the fit and how it looks on you is what really matters, not so much the brand.
Amazon and online shops are fine for specific things (tie, cufflinks, accessories), but for the main suit I'd be cautious. It's easy for it to arrive ill-fitting and then you get stuck with exchanges and returns. If you still want to try online, look at Zalando or fashion stores like Mango or Hackett that at least have decent return policies. And here's the trick: don't obsess over it being "wedding" wear. A well-cut grey or dark blue suit works perfectly for a wedding and you can rewear it afterwards.
If you're on a tight budget, consider renting it. There are companies specializing in formal wear rentals that for 80-150 euros give you a complete suit in perfect condition without the stress of buying it.