Delay a signal in time vs in frequency
Is there any trade-off in numerical precision or speed?

Yes. For delays that are integer multiples of the sampling period method 1 is far superior: it's computationally efficient, it's bit-exact, it's easy to implement and it's almost fool proof.
Method 2 is computationally expensive, you need to pick an FFT length (which is not trivial) it's subject to numerical noise and it incurs significant latency.  It implements a circular shift, not just a delay and so you need to manage overlap, frame boundaries, etc which is easy to get wrong.
Non-integer (or fractional) delays are completely different can of worms and quite complicated. Suggested reading: Splitting the unit delay