You can use 'Marketing Suspended' functionality.
When you want to 'pause' a lead from getting an email, 'change data value' of marketing suspended = true
when you want to 'unpause' change that value back to false.
Any email Marketo sends, it will not include leads that are marketing suspended.
Okay, thanks Rajesh!
Is there way to automate this so that once 3 months pass, this lead will be removed from the Marketing Suspended list?
Yes. You can
If you want to suspend emails for 3 months, create a smart campaign like
1> Marketing suspended = true
2> wait for 3 months
3> marketing suspended = false
There are some gotchas w.r.t. preciseness of wait times but in your case, this way might be sufficient
Hope this helps.