First, as you’ve noted, it’s a bad idea to use doubled-square brackets as literal text within a field value, (unless that field is supposed to contain a list of items, and some of the list items contain a space, e.g., “one [[two words]] three
”).
Also, as you’ve noted, it is problematic to use square brackets within a literal filter operand, since the square brackets are processed by the filter syntax as delimiters to surround the operand value.
Fortunately, short of re-writing everything to avoid this “bad idea”, there is a workaround: first put your literal value in a variable, and then reference that variable in the filter syntax, like this:
<$let value="[[`]]">
<$list filter="[field<value>]">...</$list>