Nano hangs with I2C Library and analogRead

My guess is that the Wire library has gotten confused and has locked up in a loop waiting for an i2c event that will never happen due to some issue on the i2c bus.
Depending on which version of the Wire library you have there is dramatically different behavior as to how the Wire library handles certain i2c exceptions / errors but some end up with the Wire library hanging.

It might be useful to check the return values from the lcd.print() calls.
There are some I2C failures in the Wire library that return status codes, which will be returned through the hd4480 library back to the sketch.
Some of those are effectively fatal. i.e. if you do a subsequent call to Wire to attempt to write something the Wire library will hang.

i.e. if the return value from lcd.print() call is non zero, the Wire library has failed to write the data and depending on the exception code returned, a subsequent call could hang the Wire library.

unfortunately there are certain i2c exceptions that, IMO, are still not handled properly by the Wire library, in that they can cause the Wire library to hang in a tight loop even in the newer wire library that avoids some of the lockup states.

IMO, the Wire library should never hang.

Most of these lockups occur when there is some kind of noise glitch on the bus, often caused by a poor power supply or improper pullups.

The only way to recover from this is to reinitialize everything.

You could run the included I2CexpDIag sketch to see if detects any sort of issue.

--- bill