'Sour' is not necessarily a negative word, and it doesn't suggest that something has gone bad. A touch of sourness can enhance the flavour of food or drink.
You could use the word 'rancid', though. This can be used to describe the taste or smell of any fatty food (meat, milk, cheese) which has become stale and unpalatable. 'This beef tastes rancid'.
We tend to use the expression 'go sour' in an idiomatic rather than literal way. For example, if a personal or business relationship began well but then deteriorated, we can say that it 'went sour'.