In ti amo, ti is the direct object. It is not changeable into amo a te, but only into amo te (the same as the English “I love you”).
In grazie a te there is an implicit verb: (dico) grazie a te. In this case it's not possible to invert the position, because the “weak” pronoun ti can only be attached to the verb. So you can say ti dico grazie, but not ti grazie.
There is a slight difference between ti amo and amo te; the latter is more emphatic when used absolutely (I love you and nobody else). It is also mandatory when followed by some opposition: amo te e non (add name here). The former is more intimate: you won't whisper amo te to your lover, but only ti amo.