There must be some subtlety I'm missing because you say it's hard to have a light client because there's no way to have a subset of transactions/checkpoint, but then say its PoW is so expensive that starting from a checkpoint is the default.
Keeping data from all tx indexed entails a large memory footprint during all client use. The checkpoint issue affects only the initial sync. Making that trustless by turning off the checkpointing makes turns a moderately slow sync into an extremely slow sync.
Monero's PoW being "expensive" is not an actual scaling concern, and checkpoints makes sense for all blockchains.
Other chains like bitcoin still verify that their checkpoint has the most cumulative work behind it, so you have additional assurance that the miners are also attesting to the checkpoint correctness. In Monero you have to trust the checkpoint to represent the most worked chain.
Monero's super expensive PoW also makes it very hard to interface with other smart blockchains that may want to verify the amount of work behind a Monero block, or to support useful techniques like flyclient [1].
Another problem is that Monero's PoW is expensive to verify where a good PoW should be instantly verifiable. In fact, it's considered so expensive that by default, the Monero client uses a checkpoint block without verifying all the PoW that led to the block.