You can definitely do this and there are invariably dozens of different possible solutions I am guessing.
I would probably create a table structure populated with the tables that you think need to be rebuilt (based on fragmentation %) and then within that table have an id, tablename, indexname, runnbr such tha the runnbr would be a value of 1-4 depending on which run you wanted it to go on. And then either through a script or SSIS package schedule the index rebuilds based on that runnbr. That would be easy enough to set up and have run, I would think and it would give you the control to determine which tables you wanted rebuild on which days and you could determine the 25% number by pretty much anything you wanted to (25% of total tables, 25% by row count, 25% by table size, etc...). Do whatever you are most comfortable with, I would say.