I also liked to redirect STDERR to get a proper Error Logging. The problem is that npyscreen gets the screensize from the stderr fileio. Dunno why.
my quick&dirty fix was in line 117 in file /usr/local/lib/python2.7/dist-packages/npyscreen/proto_fm_screen_area.py
change
mxy, mxx = struct.unpack('hh', fcntl.ioctl(sys.stderr.fileno(), termios.TIOCGWINSZ, 'xxxx'))
to
mxy, mxx = struct.unpack('hh', fcntl.ioctl(sys.stdout.fileno(), termios.TIOCGWINSZ, 'xxxx'))
then you can redirect stderr to a file and leave stdout on the screen for the npyscren/ncurses application.
I am not at the actual version so maybe the line is on another linenumer ... but its exactly the line you would see in the error message.