The Portugal youth international left Craven Cottage, with Fulham then making a settlement payment to Balham Blazers, the non-league club where Carvalho had previously played.
That payment contravened Premier League registration regulations and Fulham have accepted the breach.