There is no way we can run the full node.
Are you sure ? What is the reason for that ?
A hard drive costs around 25$ and basically any CPU would be suitable. You could even use a raspberry pi to run a full node.
So what is the best option in this case? Can I use current flow (with an xpub key) in that case?
Yes, definitely.
I understand that is not safe to query a third party service to check a transaction state.
But we have some limitations.
What are your limitations ?
Are you going to start a service which sells goods but can't afford a 50$ device to run a full node ?
If you can not run your own node, the only option is to rely on a 3rd party.
You could either query an API provided by a blockchain explorer or query an electrum server.
I just want to know maybe there are any other types of wallets that allows an owner to provide some public key to generate new payment addresses.
I guess you mean to provide the master public key to derive multiple addresses ?
In this case, yes. You could go for electrum.