This is my issue. I have lost 40-60lb many times in the past 15 years, but I always gain it back because the root cause is not fixable. I always have a lingering hunger, and I don't want to spend my entire life hungry.
It seems like there's growing medical acceptance of the idea that everyone has a natural weight that they seem to plateau at (which in some cases is overweight.) 1mg of semaglutide reset my natural plateau from 225 to 180. You are exactly right though - being overweight is either a daily physical battle or an hour by hour mental battle if you are trying to restrict calories.
I had that issue and solved it with high-satiety-low-calorie foods like mashed potatoes and rolled oats. 1 cup/80 grams of rolled oats is only 300 calories and is very filling. 3 cups a day would only be 900 calories and be extremely filling.