There's no specifically enforced alert count limit when using SetAlert, but you are charged for each event that gets triggered as a result of an alert. We don't anticipate reaching the integer limit of alerts anytime soon, but if we do then we will probably revise many of the other structures to be 64-bit.
GetAlerts does not have any specific maximum that it can return, but it will eventually begin to timeout if you have too many alerts configured. Deleting alerts before they become too numerous will limit this problem. Also note that alerts are automatically deleted by the system if the end_date is passed. We highly recommend that an end_date be specified when possible, since it reduces burden on your side to delete them to clean them up. We will eventually introduce a GetAlertsEx that provides paging functionality and also ability to query based on a specific alert_id, or other search criteria in the alert.