Ancient question... but I recently learned that if you are creating a Project-based Time Activity and you set an Earning Type in the request, Acumatica will blank out the project task.
The solution in this case is to set all fields except the project related ones, grab the ID of the created row, and follow up with a new request to set the Project and Task on just that row.