Accepting bitcoin means "you give a BTC address to somebody while owning the appropriate private key". Every single wallet solves this issue. Maybe, you search for more privacy? Maybe you search for simple UX? What do you mean by "best"?
Being notified about received money means "I know my addresses and search for them in the blockchain". To stay private, I need my copy of blockchain on my own node. The node has documented RPC API.
The question about blacklisting sounds strange. This is a fundamental bitcoin property that transactions/addresses are very difficult to be efficiently blacklisted. Even if mining becomes more centralized, there is still high possibility for you to transact. It just might become more expensive. Moreover, there is the concept of stealth addresses.
And finally, lightning IS vanilla bitcoin as well. Maybe you wanted to say "on-chain" only bitcoin. With Bolt12, you can receive lightning bitcoin by having similar user experience as with on-chain. Anyway, it is still vanilla bitcoin.