Нашёл решение через объёдинение запросов и использование операнда OR.
Здесь редиректится сразу и если домен старый и через www, и если старый без www, и если новый через www.
Таких решений я в сети не видел, хотя в общем тут всё банально.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^old\.ru$ [OR]
RewriteCond %{HTTP_HOST} ^www\.old\.ru$ [OR]
RewriteCond %{HTTP_HOST} ^www\.(.*)$
RewriteRule ^(.*)$ http://новый.рф/$1 [L,R=301]
</IfModule>
В punycode, конечно же.