Yes, it is a good practice to implement a limit. You should also do some research with relay operators to get an idea of the limit. Take a look at NIP-11.
For what I know you can install the APK directly which don't use Google Firebase, I haven't checked but, it the ToS related to the Google version maybe?
Doesn't matter. No open-source app of a open protocol should have ToS or use Google in any way shape of form. We also don't need Google app store. Fuck Google.
{ "limitation": { "max_message_length": 16384, "max_subscriptions": 20, "max_filters": 100, "max_limit": 5000, "max_subid_length": 100, "max_event_tags": 100, "max_content_length": 8196, "min_pow_difficulty": 30, "auth_required": true, "payment_required": true, "restricted_writes": true, "created_at_lower_limit": 31536000, "created_at_upper_limit": 3 }, ... }