A resposta é definitivamente usar field.tpl.php . Se você procurar a fonte desse arquivo, poderá ver as linhas ofensivas:
<?php if (!$label_hidden): ?>
<div class="field-label"<?php print $title_attributes; ?>>
<?php print $label ?>:
</div>
<?php endif; ?>
(espaçamento e recuo meu para maior clareza).
Remover os dois pontos é tão simples quanto substituir as linhas acima por:
<?php if (!$label_hidden): ?>
<div class="field-label"<?php print $title_attributes; ?>>
<?php print $label ?>
</div>
<?php endif; ?>
Acabei de testar isso em uma instalação em branco do Drupal e funciona perfeitamente; não mais dois pontos depois dos rótulos dos campos.
Se você já está fazendo a mesma coisa, mas não está obtendo os resultados corretos, posso pensar em uma ou duas coisas que podem estar dando errado:
- Você colocou sua versão personalizada do field.tpl.php em uma pasta do módulo, em vez da pasta de temas ativos do site (ela precisa estar na pasta do tema).
- Outro módulo / elemento no sistema também está substituindo o field.tpl.php, de uma maneira mais robusta do que você atualmente. Ver se é esse o caso, envolverá a desativação sempre tediosa de cada módulo ativado para determinar de onde vem o problema.
Você não poderá fazer a alteração com uma função de pré-processamento de modelo, pois os dois pontos são codificados no arquivo de modelo.