Willems is als verdediger zijn voetbalcarrière begonnen bij Ajax. Hier is hij echter nooit doorgebroken. Hij heeft tweemaal op het veld gestaan in de hoofdmacht tijdens de competitie. In deze periode fungeerde hij nog als middenvelder, als stand-in voor Ronald de Boer.
Hij vervolgde zijn carrière bij Vitesse, FC Den Bosch en daarna bij het Engelse Grimsby Town. In 2002 kwam de linksback weer op Hollandse bodem. Hij is sindsdien actief geweest bij verschillende clubs uit de eerste divisie. Nadat Sparta promoveerde naar de eredivisie werd hij voor het hoogste niveau te licht bevonden, en vertrok hij naar Go Ahead Eagles in Deventer. Door slijtage aan het kraakbeen in de knie moest hij in november 2005 stoppen met voetballen. Ook het voetballen bij de amateurs was geen optie.
In mei 2012 veroordeelde de rechtbank van Dendermonde Willems tot een gevangenisstraf van twee jaar en een schadevergoeding wegens oplichting van twee kwekers.[1]