Trying to switch a 5v fan with a LiPo and can't figure our what's wrong at full duty cycle
According to specs I found online, the NodeMCU wants 7-12V on Vin. Most LiPo cells put out around 4 volts, which isn't enough. The battery voltage may drop and the MCU's voltage regulator probably fails to keep putting out 3.3V when the fan's average power draw exceeds some threshold. 

It might also be that the fan itself is slowing when the duty cycle approaches 100% and the battery voltage drops. 

Doesn't the NodeMCU run on 3.3V, not 5V? If you feed 5V into the 3V pin and that's supposed to have 3.3V, it will likely damage or destroy the board.