I've just encountered the same issue. As you said, the issue comes from style preferences of using file-scoped namespaces.
Assuming you'd always like to use file-scoped namespaces, changing the Class.cs template to the following resolved the issue for me:
using System;
using System.Collections.Generic;
$if$ ($targetframeworkversion$ >= 3.5)using System.Linq;
$endif$using System.Text;
$if$ ($targetframeworkversion$ >= 4.5)using System.Threading.Tasks;
$endif$
namespace $rootnamespace$;
class $safeitemrootname$
{
}