I feel your pain!
One thing that Anet has done over the last year is introduce a Chat Filter process using an INI file that you can maintain.
I understand that it isn't a 100% solution, even though it requires maintenance on your part, it still helps a lot.
Here is an article on this site if you haven't seen it already
Chat Filter - Filter out gold spammers.
Within the INI file, there has been a variety of suggestions on how to set up this file. This is what mine looks like so you can add to it with different text. It is character specific so you have to be careful of zeros, symbols, spaces, etc.
[ChatFilter]
mmosky.com = Suppress, Any
gw2sale.com = Suppress, Any
GW2SàLè = Suppress, Any
GVGMALL.COM = Suppress, Any
MMOG = Suppress, Any
MM0G = Suppress, Any
MMOSKY = Suppress, Any
GW1SHOP = Suppress, Any
Price Matching = Suppress, Any
5 min delivery = Suppress, Any
.COM = Suppress, Any
,COM = Suppress, Any
WVVW,GOLDAA,COM = Suppress, Any
$ = Suppress, Any
WVVW = Suppress, Any
GOLDAA = Suppress, Any
WVVW,GАМЁBLAСKMARKЁТ, COM = Suppress, Any
G 0 L D = Suppress, Any
G0LDAA, C0M = Suppress, Any
G0LDAA = Suppress, Any
MM0SKY.CO = Suppress, Any
GW1SH0P.CO = Suppress, Any
GAMERSMARKÉT.CO = Suppress, Any
Sh0p.CO = Suppress, Any
MM0 = Suppress, Any
G o L D A A, = Suppress, Any
I hope this helps
Chevy