You are confused because those are indeed two completely different verbs.
would mean that tomatoes are standing (perhaps boxes of tomatoes are standing in the corner of a grocery store).
Cколько сто́ят помидоры?
means "how much are tomatoes?".
In the first case the verb is "стоя́ть" (to stand), in the second case, the one you're asking about, the verb is "сто́ить" (to cost, to be worth).
Не стои́т" means doesn't stand, often by default it refers to erectile dysfunction.
Не сто́ит" means "[it's] not worth it", "don't do it", "no, thanks" ("not worth it" being the literate translation).
Он/она того не сто́ит" means he/she isn't worth it.
Он/она уже на ногах не стои́т" means he/she is so drunk, that he/she can't even stand upright.
Since in Russian stress marks are not used except for learning materials the only way to know whether 'to stand' or 'to cost/be worth' is used is from the context. "
Сколько стоит... ?" is pretty straight forward as it's clearly a question regarding the price of something ("How much is... ?"). However question starting with "сколько" and followed with "стоит" can in some instances refer to standing. For example "
Да сколько вы там уже стоите?!" means "Just how long have you been stuck there for?!", so "и" would be stressed in that case.