Can a model or record have conditional requirements?
I can think of a couple of options and I'll just throw them all out there.


Have a separate model per partial form and each model performs its own validation.
Have a single model, but have it override the rules() method and you can conditionally set what validations methods you want depending on the step you're on. Presumably, you'd want to pass in a step number either through the querystring or through POST.  You can see an example of how we're doing some conditional validation using this method for email settings in EmailSettingsModel.
Don't worry about any of Craft's/Yii's automagic validation classes and just have the controller manually do its own validation per form and return errors as necessary.