Вы можете получить предполагаемое поведение, установив свойство отображения span на встроенный блок:
.heading span {
display: inline-block;
}
.heading span:first-letter {
color: red;
}
<div class="heading">
<span>An</span>
<span>Interesting</span>
<span>Heading</span>
</div>