C.K.
It sounds like this wasn't a problem prior to him getting sick, is that right? How old is he?
If it were me, I would just put him down as usual (4 hours of reading to him or whatever is waaaaaay too long). Let him cry, for as long as he likes, and as often as he needs to. As a parent we all know the difference between a cry that means there's a problem and the one that is them just complaining. If he wakes up and decides to cry until morning, let him. At least you know he has a good chance of going down for a good nap and probably won't have the energy for as much crying later that evening.
This is really a control issue, especially if this is an older child. He is trying to control where he sleeps and dictate the terms of it.
I personally tend to be pretty strict and tough about these phases with my kids, but if you feel there is a better way of initiating this, then do it in stages, but the important thing is to set a boundary and stick to it with him.
Good Luck!