The Big 12-leading Jayhawks (17-3, 6-1 Big 12), who had as much as a 13-point lead early, found themselves down after TCU scored the first seven points after halftime.
Mason's driving layup with 13:26 left got the Jayhawks within 43-42 and started a 12-0 run that put them ahead to stay.
But a layup by Mason with 3:35 left was their last field goal. He then missed two free throws with 4.7 seconds left to leave TCU (14-6, 1-6) a chance to force overtime.
A long 3-point try by Charles Hill Jr. ricocheted off the back rim at the buzzer.
Kyan Anderson had 17 points for TCU.