My question I guess is what is the fundamental reason for the perceived and future limitations of transaction confirmations?
Number of transactions that can fit inside a block.
Ok, so the block contains all the transactions that occurred in that block as well as the mined block?
Contains the transactions that was in the mempool, as well as the Coinbase of that block.
So when you get a block in a mining pool the coins are confirming the series of transactions that occurred so, if they get a spike in one block then it can be slower than how fast they solve the next block? I think that's right, right?
I don't know what you are talking about. If you are talking about a spike in the number of blocks generated in one unit time, its a no. If you are talking about the number of transactions in a block affecting the speed of the finding, its also a no. Since you are just hashing the block header, its essentially the same with finding a block with 1 transaction.
Can you explain difficulty?
Difficulty is the measure of how difficult it is to find a hash that is below the target. The block is valid only when the hash of the block header meets or is below the target.
I'll have to go back over it one of these days. It just seems like a lot of cpu power. The block time is always the same and they always solve it in 10 minutes but the confirmation can take longer. I don't understand that really. Why do these blocks always have to be static at a time limit?
The blocks can only contain this much transactions. Not every single transaction on the network can fit inside the block. The time interval is probably set also to regulate the distribution of Bitcoin.
Also, why didn't they just make the coin supply increase in some in relationship to Moore's law since they were using CPU power?
Supply and demand. If the coin supply is increased due to the increase in mining hashrate, the price of Bitcoin won't be this high today and the miners probably would still earn the same amount.