First, I think it was entirely within the other passenger's right, and not outside the bounds of good etiquette, to recline his seat all the way for as long as wanted. That said, my practice is to (1) not do so except when I really need to, say in order to try to sleep, (2) recline slowly, (3) put the seat up during the meal service (unless I'm gonna sleep through it), and (4) put the seat up when I get up to go to the bathroom. If, in fact, the passenger in front of you was sleeping the entire flight, I don't think there's much you could have done; I think it would have been rude for you to have waken him. If, on the other hand, he ate the meal, which would have required leaning his body forward in order to reach the tray, I think it would have been fine to politely ask him (or ask the FA to ask him) to bring his seat forward during the meal service. (I have seen FAs proactively ask passengers to do this.)