Как облегчить запрос с множеством OR по поиску в одной таблице?
Это же набор условий, никак.
НО сделайте составной индекс для полей value и param_id и это ускорит ваш поиск
Вариантов оптимизации может быть несколько, в зависимости от версии СУБД, распределения данных. Например, можно сначала рассчитать свертку 
SELECT count(*), item_id, param_id, value 
FROM values_product
GROUP BY item_id, param_id, value;
сохранив ее в отдельную таблицу. И если ее размер гораздо меньше, чем размер таблицы  values_product, запрос к ней будет работать быстрее.