Стоит ли создавать отдельные модели под отдельные категории товаров в Django?
Во-первых: однозначно, одна таблица для товаров.
Во-вторых: специфичные для конкретных категорий, признаки задаются следующим образом.1. таблица Категории.
2. таблица ПризнакиКатегорий.
    - внешний ключ к Категории;
3. таблица ЗначенияПризнаков.
    - внешний ключ к ПризнакиКатегорий;
    - внешний ключ к Товыры;
Такое реализировано уже в Django-Oscar:model.