Note that like '% red' means any fields containing red at the VERY END of the field with a space in front.
Try this:
PHP Code:
...where products_name REGEXP '[^a-zA-Z]red[^a-zA-Z]' 
Using regular expressions, we can tell it to pick every instance of red that does not have a character before or after it. I think that will cover what you want without a string of comparisons.

Regular expressions are real powerful, but also very difficult to learn.