'lived to be 90' or 'lived for 90 years'. The former states he died at 90 years of age.
When should I use "nouăzeci de ani" and when "nouăzeci ani" (without de in between)?
With any number of twenty and up you have to insert "de" in Romanian. So as Aklxa said, you don't really use your second example.
You don't really use that. Only in very rare cases. You need the "de"
This might be said in English in certain circumstances, but I suspect the translation should be "my grandfather lived to 90"