The call occurred with 1.5 seconds remaining in a tie game at the Rose Garden.
"After review at the league office, the video replay confirmed the play should have been ruled a blocking foul as Portland's Ronnie Price did not get his body directly in Mayo's path prior to him starting his upward shooting motion," an NBA statement read. "Mayo should have been granted two free throws."
Instead, Portland's LaMarcus Aldridge hit the game-winning turnaround jumper off an inbounds play at the buzzer.
The loss dropped the Mavs (19-26) to five games out of eighth place in the Western Conference and four games behind the ninth-place Trail Blazers.
"You really can't [say] too much without getting a big fine," Mayo told reporters after Wednesday's practice in San Francisco. "Can we play that 3.3 [seconds] over again?"
On the play in question, Mayo caught an inbounds pass on the baseline in front of Portland's Wesley Matthews and drove to the basket for an attempted layup. As Mayo leaped, Price slid under him just in front of the restricted area.
"I thought I had Matthews beat, and he gave me a little shove," Mayo told reporters after the game. "I tried to jump straight up and when he shoved me, it made me go into [Price]. I really don't know, but they called it."
Also Wednesday, the league says video replay showed that Denver's Andre Iguodala reached in and fouled Indiana's Paul George with the score tied at 101 and 2.2 seconds left Monday. Iguodala was credited with a steal and the Nuggets won the game.
Information from The Associated Press was used in this report.