I came around this during my last custom project and didn't find an out of the box function or any info when searching here on Connect for an answer how to solve this problem.
Now as I found a solution (or workaround), I want to share it with you.
The challenge was to have fields in SharePoint NOT required, but on the form they MUST be required.
As a further consequence the Save button had to be disabled because else required fields are not very useful.
So there are three steps to realize that.
1. I added a red asterix to the field labels (really basic)
2. Make the field required with a validation rule
3. For each field you set required, you also have to create a formatting rule on the Save button to disable it
Now the Save button should be greyed out until all required fields are not null or empty.
P.S.: if there is an out of the box function that could avoid this workaround, please reply and let me know! ;-)