It is not unlimited, but different designs may have different "max gates" just by the way they are designed. The important figure is the LUT usage.
For RAM - FPGAs have built in rams that are separate from the LUTs. but they can also be configered to use LUTs as ram. Total memory bits also includes max LUT ram uage IIRC. But its not as simple as total bits, as usage can be affected by how efficiently you use the rams in your design.
A more sensible question to ask would be what your project is? often it is the IOs needed, memory requirements or built in multiplier requirements that drive the FPGA choice rather than LUT usage (as the others are a lot easier to calculate before you implement your design).