Question: do villagers need to sleep to refresh trades?
Answer: They will refresh their trades, but if nighttime comes and they don't sleep, they won't refresh. Don't move them into a cell until you have the trade you want. Otherwise simply give them access to sleep and you will see new trades in the morning.