You are right, this is a bad design. And when you have a bad design, you want to fix the design, not look for some method to make the bad design run faster. In this case, I think the design change is simple. First drop all those indexed views. Then create one indexed view like
CREATE VIEW [dbo].[V] WITH SCHEMABINDING AS SELECT Category, ID, Value From [dbo].[BigTable];
CREATE UNIQUE CLUSTERED INDEX [IDX_V]
ON [dbo.].[V] (Category, ID);
(Note that for the clustered index I'm assuming that the clustered indexes you currently have on your views have only one key, that is ID. If the key to those indexes is ID, Value, then make the key of this new index Category, ID, Value).
You will have to test, of course. But I'm pretty sure that this will run your sample query very fast no matter how many categories you have and no matter which category you want to update.
Tom