El 38 ET pone en igualdad tanto al "convenio" como al "contrato", respecto de la determinación del periodo de vacaciones.
Respetando el mínimo necesario e indisponible en cualquier caso y circunstancia de los 30 días naturales, entiendo que sí se podría reflejar en contrato una cláusula que dijese algo distinto a lo establecido en convenio.
Eso sí, debe ser "por contrato", no sirve un "acuerdo interno" ni un "pacto verbal" ni otras fórmulas más laxas.