(Forgive the English explanation. I'm doing the "reverse tree" in English-German, and my German sucks.)
In English, the construction is "as [adjective] as a [noun that exemplifies the adjective]". For example, you would say that someone is as stupid as a tree stump, or as strong as an ox, or as red as a rose (or as a tomato).
"Red AS a tomato" means the redness is reminiscent of a tomato. In other words, it's very red. "When I told the funny story about her, her face got as red as a tomato."
"Red LIKE a tomato" is not normally said, but it is grammatically correct. If it were used, it would probably mean that something has exactly the same red color as a tomato has. Or maybe you would use it for clarification, if the person you're talking to didn't understand you. Suppose you passed a girl who was badly sunburned, and you had the following conversation with your friend:
"Wow, that girl was red!"
"What do you mean? Do you mean she has read a lot of books?"
"No, RED like a tomato."
I guess it would technically mean the same thing, but you would normally say "red as a tomato", using "as" instead of "like".