Je précise d'abord que je donne des infos générales, pas un avis juridique ; sans voir votre dossier, pas de conseil concret.
La première chose à faire, c'est de passer du suivi oral au suivi écrit. Dire "ça sera fini cette semaine" au tel, ça a zéro valeur probante. À partir de maintenant, résumez chaque échange par mail : "lors de notre échange d'aujourd'hui, la livraison a été confirmée pour telle date".
Deuxième étape, vérifier ce que le contrat prévoit en cas de retard. S'il y a une clause pénale, il faut généralement d'abord mettre en demeure, donc envoyer une mise en demeure formelle. Le contenu et le délai de cette mise en demeure sont importants, ne téléchargez pas un modèle et ne l'envoyez pas comme ça.
Troisième étape, sécuriser ce que vous avez : demandez la livraison du code actuel, de la base de données et des fichiers de design s'il y en a. C'est ce qu'on perd le plus quand le conflit s'envenime ; c'est bien plus facile à demander quand la relation est encore bonne.
Si vous pensez à transférer le projet, cette troisième étape est indispensable. Si vous n'avez pas de code fonctionnel en main, pas de transfert possible, ce sera une refonte totale.