The supply schedule is not stored anywhere as a number to be trusted. It emerges from a rule: each block may create a specific subsidy, and that subsidy halves every 210,000 blocks.
Every full node verifies that rule on every block it accepts. A miner who tried to award themselves more would produce a block that other nodes simply reject as invalid.
That is the whole enforcement mechanism, and it is why running a node matters: the rules hold because participants independently check them, not because anyone has promised to behave.

