If your transmitter is set to the highest power mode and the receiver is close by - maybe on the same table - then the RF power output from the transmitter will be too much for the receiver to cope with and you will get corrupted or no data.
As you have discovered, reducing the power level allows your setup to work when the transmitter and receiver are close to each other. But, a lower transmitter power will imply a lower operating range.
I seem to recall that there was a library for the nRF24L01 that included the ability to dynamically change the transmitter power level based on the RSSI value provided by the receiver.
EDIT: Sorry, memory failure! The library I was thinking of was for the RFM69 radio module, not the nRF24L01.