I know that I can use a simple hardcoded string in default but I am trying to do this:
myvar: \"{{ lookup(\'env\',\'var1\') | default(\"{{var2}}\",true) }}\"
Once you opened a Jinja2 expression with {{ you don't need to open it again (especially quoted) and you can refer to the variables by their names:
{{
myvar: "{{ lookup('env','var1') | default(var2, true) }}"