Hi Fran,
Please see below a summary of your implementation, with some adjustments that need to be done in order to address your requests:
On Case entity:
> Labor is being tracked in a custom entity - Labor.
> Relationship created between Case and Labor entity.
> Total case labor tracked in a rollup field: "Time spent on case time tracking". This will not be used, as this is not possible.
-> This field needs to be a simple duration field. When labor entity is created, this field will be updated on the parent case. You can name it "Case Labor". (in my example is "TestDuration").
> Suggestion: Create a simple duration field. Create a sync workflow on labor entity, to run on labor record creation. The workflow will update the associated case: increments the pre-existing value on Total Case Labor with the new labor created.
Workflow created:

Update details:

On Entitlement entity
> Case labor from entitlements is stored in entitlement entity on "Time spent on case time tracking entitlements" - rollup field mapped to "Time spent on case time tracking" from case entity.
-> This implementation is not possible, as you can't base a rollup field in another rollup field. Based on this article, "A rollup over the rollup field is not supported.".
-> You will need to map this rollup field to a simple Duration field . In this case, "Case Labor" field (in my example is "TestDuration").

> Remaining hours calculated in a calculated field = total terms - "Time spent on case time tracking entitlements".
-> You will need to calculate this with the following expression: (total terms * 60) - "Time spent on case time tracking entitlements".

You can see below the output of the implementation:
Create an Entitlement:

Create a case:

Add labor on the case:

Also added another labor of 4 hours.
Please note that duration field is immediately updated:

Labor on entitlement is updated as well:

Hope this information helps.
Let me know if you need further assistance. If this answers your needs, kindly mark this as an answer to the post.
Thank you!
Kind Regards,
João Pratas