If you trade with a villager until he runs out of inventory, and stay in the village for days and go back to the villager - he'll still be out of inventory. No combination of leaving and returning or hanging out and waiting or trading for something else seems to let his inventory replenish.
Example - sell paper to a librarian until they want no more paper. Wait around for days. Return to the librarian - paper will still be blocked as a trade. Sell books until the librarian wants no more books - now there are TWO things the librarian won't buy, apparently indefinitely. This doesn't appear to reset over time (at least not the same sort of time frame as it used to).
They stopped resetting around the last 1.12 beta or the first 1.13 beta.
See also, comment on MCPE-46062 posted 8 hours before this issue was created, same issue (different ticket).
I play on XBox One S and Windows 10 (multiplayer over LAN, typically hosted on Windows 10) - issue appears consistent.