If I play a Keeper, and I already had a Keeper, do I have to discard the first one to play the new one? Is there a Limit to the number of Keepers I can have in play?

You can have as many Keepers in front of you as you want, unless a Keeper Limit New Rule card is played. Even then, you can play as many Keepers as the current rules will allow during your turn and only decide which ones to keep and which to throw away (so as to comply with the Keeper Limit) when your turn is over.