How do miners decide how many transactions they should have in a block in order to mine 1 bitcoin?
The amount of work miners do has no impact on the amount of Bitcoin they make. The block subsidy is a fixed amount, and transaction fees are determined from transactions. Mining 1 Bitcoin does not require some specific amount of work.
Miners determine how many transaction they should have by determining how much in transaction fees they stand to gain from including those transactions. This is typically done by ordering all known unconfirmed transactions by their fee rate. Then the miner just includes as many transactions that is allowed by the consensus rules, starting from the transaction with the highest transaction fees.
When miners compete to find the "nonce" that has the smallest possible hash number, would it be faster/easier to find the "nonce" if there are fewer transactions?
No. The number of transactions has no significant effect on the difficulty of a block or the amount of work required to mine a block. While including more transaction nominally requires computing more hashes, this is negligible in the grand scheme of things, especially since this calculation is only done once for a set of nonces and extraNonces.
Do all miners try to solve a solution where all the transactions should be the same in a single block and everyone's trying to compete to finding the nonce and hash?
Everyone chooses their own set of transactions to include. Everyone is making their own block, just each block points to the same parent block.
Or is it random, and its just whoever finds a hash the quickest, saves those transactions and adds it to the blockchain?
It is entirely random. It's however finds a block first and broadcasts it.
Also, I noticed looking at btc.com, there are blocks being mined less than 10 minutes back to back, I thought it needs to be 10 minutes to be mined?
The average time between blocks is 10 minutes, but that is an average, not a requirement. Blocks can be found in less than 10 minutes, or more than 10 minutes. The average block is ~10 minutes.