If you are not bothered about getting a service letter, just leave. They can't do anything about it. They can't hold your EPF/ETF or refuse to pay your salary. Its illegal.
You are entitled to set off ALL your annual and casual leave against your notice period. They can't prevent you from that. Its illegal.
They can't change the employment contract without your singature. That's also illegal.
They don't need to "accept" your resignation letter. There's nothing in the shop and office act about "accepting" your resignation.
If they take you to courts, they need to prove that the violation of the employment contract on your part resulted in direct financial loss to them. If they can't prove that, no judge will entertain the case.
The only thing they can withhold is your service letter. They are not legally bound to issue you one.