This change always bothered me. Is there a rule in German that prevents book titles from starting with an indefinite article?
That's a tricky one and we can only speculate why it was done.
However, we can say for sure, that there is no such rule. But there are far less (fantasy) book titles starting with an indefinite article than with a definitive one.
For your question, we have to go back to 1997, as this was the year when "A Game of Thrones" was first published in Germany. The book was split in two and published in 1997 as "Die Herren von Winterfell" and the 2nd part in 1998 as "Das Erbe von Winterfell". Follow this link to get the creeps from looking at the covers (I'm not sure about image copyrights, so I won't embed them here).
You can see: the series was already called "Das Lied von Eis und Feuer". So ... why?
From my point of view:
It sounds far better to call it "Das Lied von Eis und Feuer" than "Ein Lied von Eis und Feuer"
Choosing a title and a cover is a lot about psychology and when you look at the cover of the 2nd book, oh boy ... is that Conan the barbarian? I'm pretty sure they used this image, so everybody knows: FANTASY!!!11
"Ein Lied" sounds vague, dull, boring. But "Das Lied" sounds like I want to hear that one song. Or I want to know what this is about.
I also don't think it has very much to do with how books are sorted at the store. When looking at the books published from 1995-2000 containg der, die or das vs ein I would rather publish one starting with "ein", because there is much less competition in the e-section. (I know, the search results are not 100% accurate, but you get the point).
Maybe it's a translation error. But I don't think that either. Just look: There are tons of books in German, which are named nothing like the original. Just compare "Ein ganzes halbes Jahr" and "Me Before You".
Maybe they just didn't "care" and as @Annatar said in the comments it's much easier to come up with generic "Der/die/das X von Y" titles compared to the more poetic "Ein Spiel der Throne".
There's no rule that a book title has to be translated literally. It's the normal case, but the publisher, author or anyone else involved may think that another name would be better. Placement in the book shelf is just one reason.
In my opinion, "Das Lied ..." sounds much better than "Ein Lied ...". Others have said it sounds dull or boring. Why?
If you say "Ein Lied" it's only claim is that it is one among many. There may be hundreds of songs about other and the same topic, whereas "Das Lied" means that it is outstanding: it's the only or at least the "definite" book.
Often subtitles start with "Ein". A title like "Die Westeros-Saga - Ein Lied von Eis und Feuer" would have been a very conventional name for a series of fantasy novels. In the worst case, I might think that the author couldn't think of a good title for his book and finally used his subtitle. If the creativity of an author is not even sufficient for a good title, why should the content be worthwhile?
There's no such rule in German that prevents book titles from starting with an indefinite article. It's just artistic freedom of the translator. It happens very often titles are differently translated than a 1:1 translation. It's for marketing reasons or considers cultural aspects of the target country. No obvious reason is given in your example.