The problem is that anytime we want to make changes to the features on AGOL e.g. modify domains or add in polygons we have created, we have to reupload the whole service again and modify all the maps we have created on AGOL. I know there is an option to overwrite an existing service but this seems to crash out whenever we try and use it.
I'm having the same issue Andy. I get to the window that warns me "If you overwrite this service you will lose access to the associated feature service data, including any changes that were made to the data after the service was initially published. Are you sure you want to continue?" and I hit "Yes" and the publishing "crashes" and it takes me back to my map like nothing happened.
I get that too. The only workaround I have for it is to delete the feature service and re-publish the whole thing again. As long as you name everything the same and have all the layers in the same order as before, any web maps that reference the original data will reference the new data once it's uploaded. Web maps reference the data by REST URL, not AGOL item ID.
Also, is there a way to overwrite an existing feature service (created by an uploaded shapefile) while still keeping the same item ID? We have a super popular layer for our DOT Cameras that is being used on many maps that we can't break, but have a bunch of (100+) new cameras to add (that I already have in a shapefile).
Similarly, when you upload the shapefile and create the feature service, that feature service's REST URL is what's used in your web maps. To update the data, delete the feature service, update the shapefile in AGOL, then re-publish the feature service from the updated shapefile. Your web map won't need updating because the REST url won't change.