Do not watch television [for] more than one hour a day.
Is omitting the “for” okay or is that grammatically incorrect?
Yes, for can be omitted in that context. “More than one hour a day” is a time duration, which generally require for. However, phrases beginning with more than, less than, or fewer than often omit for. I have the impression that omitting for in such contexts is more common in British English than in American. But when in doubt, include it.
I talked on the phone for two hours.
I talked on the phone (for) more than two hours.