I want to remove the possibility to set the Start Publish for a page type.
I might be missing something here, but this might work:
Create a class that derives from PropertyDateControl and override the CreateEditControls or perhaps the SetupEditControl method. In this method, set Visible = false for the EditControl (or somehow disable it) IF the Name property equals "PageStartPublish" (or whatever it is). Then in your global class, use the Application_Start event handler to replace the PropertyDateControl with your derived class using PropertyControlClassFactory.Instance.RegisterClass.
I mean in admin mode, without change the code.