Unfortunately we're in the same boat but I do have a question If one were to change to AzuraCast / MediaCP or EverestCast even is there anyway to keep the stream link up so the app doesn't need to be deleted and then reuploaded?
Same IP / Port / Username and Password basically or is that not a thing yet.
Yes. It's tricky, though. Azuracast will absolutely not step on port numbers that are currently in use, so you have to shut down Centovacast AND its Icecast or Shoutcast streams to configure it properly. There is also the question of how to inject proper SSL certificates into its docker container, which you'll need to do by creating a docker-compose.override.yml file. Here's mine. It's just an example. I bought a key, then mapped it into the Docker container so that the certs Azura needs to be able to give you an SSL certified stream (an essential feature these days) are there each time you spin up a new container.
The transition can make you tear your hear out, but it's worth it. Azuracast is free (as in beer) and open source (Centova is not) and features a modern interface and sophisticated report generation which Centova lacks, and is an area in which Centova is years and years behind.