Core Lightning is fantastic and noncustodial. You could open one channel to a large node. That gives you a pretty good spending experience.
Receiving Zaps is a much bigger issue. Noncustodial Zap receiving requires a BTCPay server and is technically challenging to set up. You also probably need to have your node connected over clearnet to reliably receive which presents privacy concerns.