2 grams is nothing that's 0.03 ounces

Acceptable weight loss is not about % it more of an overall look and general condition of the animal.

You have a male in is prime for breeding so his refusal could be breeding related or seasonal or he might just be one of those animals that does not eat as much as others, keep in mind that in captivity snakes tend to be overfed anyway, and are offered a lot more food than what they would come across in their natural environment.

Small rats are fine so long he is eating he will be fine and also make sure he is well hydrated.