The reason for that is the "only" in form of しか. しか must stand with the negative form of a verb. だけ would be a way to say "only", using a positive verb form.
You could rephrase it like: 僕の目には君だけ映っているよ。本当さ
Edit: Just realized, that you obviously know the above. So:
映ってない is not the negative te form.
This would be: 映らなくて or 映らないで.
映ってない is the negative form 映って いない of 映って いる. However, the い in the ~te+iru form is ofter dropped, as it only leads to a long "e" sound of the te form.
The progressive ~te + iru form is very common in Japanese and even used in cases you wouldn't use its equivalent in English.
There's this common expression 分かってる "I know", which literally translates to "I am knowing". You wouldn't say it in English this way. But in Japanese it's the common way.