for the spritefont, changing the width and height doesn't change the size of the text - I do that at the bottom:
every tick - set scale to self.Width/self.OriginalWidth
and I think that, plus the elastic tween results in the strange movement (pixel rounding might also play a role).
I tried a few other tween settings, and things like only tweening the height and leaving the width at a fixed setting, but nothing seemed to help very much.
I don't think tweening the scale of a spritefont is going to be a viable option. Tweening a sprite works much better...
there may be a way to paste the text of a spritefont into a canvas and load that into a sprite if you really need text that can change. otherwise, make sprites of the words you need.
or make sprites of individual letters and combine those to make the words you need (so, basically a custom sprite font).