Although you do not indicate what age your Havanese is, the most likely problem with excessive drooling in this breed is dental problems. It would also account for the periodic vomiting, since if he is swallowing a mouthful of pus from time to time it will upset his stomach.
Get him checked out as soon as possible. The vet can look at his teeth, feel for any loose ones, but may have to do an x-ray to look for infections deep in the roots.
He may also need to be put on antibiotics before the procedure.