There is probably a ratio between on chain fees and cost of running a node (block size) that is an optimal trade off.
I'd rather use custodial services where it's easy to set up and run a custodial service than non custodial, but rely on a few data centres to run the nodes.