Полагаю, промежуточные таблицЫ (как уже предложили) - наиболее оптимальный вариант - с той точки зрения, что в будущем, наверняка, захотите делать Фильтр товаров по характеристикам.
Третий вариант нравится больше
И вот как раз с 3 вариантом фитровать в MySQL будет сложнее и затратнее, чем с 1 и 2.