Is the app stateless
The software is stable as such but my concern is pods, by nature, are meant to be replaceable
This is your primary concern. Is the app stateless (e.g. can the requests be served by any of multiple instances without problem?). If not - be very careful to run it on Kubernetes (e.g. don't use rolling-deployment) and don't run the app in the cloud :)
Apps running on Kubernetes or cloud should follow The Twelve Factor principles
Number of Servers
It would be good to be able to use two or more servers. This reduce the Single-Point-Of-Failure, and you can e.g. take down one server for maintenance but still serve your users.
App directly on Server or in Container
pods (on the same server) or 1 standalone application?
An application runs as a process on the Operating System, whether you run it on a container or as non-container process. There is almost no runtime overhead, what you get with containers is repeatability and maintainability.
A container is designed to be hermetically sealed, so it is not sensitive to your servers configuration e.g. what language-settings or character encoding. This was a bigger problem before containers was used. With containers the app runs in an identical environment every time, except the kernel. In addition it is easier to maintain and manage processes when run as containers, you can e.g. set limits for CPU usage, Memory limit and they get its own network e.g. multiple containers on the same server can listen to port 8080 (from the applications standpoint).
If your apps run as containers on a server cluster, you can also easyli scale out or in by adding or removing servers.
Control of resources
My guess is that once 1 pod gets into to much trouble (memory pressure to name a thing) Kubernetes is going to restart it, as pods are meant to be replaceable.
Yeah, but this is a good thing. Kubernetes is mostly self-healing. If you don't have such "control-loops", you will need manual internvention - since it is the same app that e.g. may have memory leaks.
Run app on Kubernetes or not
whether we do or don't use Kubernetes doesn't depend on this part of the implementation alone
The first thing to check: Is the app stateless?
and also, you should use two or more servers otherwise you get little advantage of running it in Kubernetes.
There is a cost to maintain Kubernetes. You need skills and you need to maintain an addition system. Make sure it adds enough value for you.