somebody correct me if I'm wrong, as I understand it there are 6 transactions/second make the blockchain, the miners will, of course, prioritize inclusion of paying traffic and a backlog of moocher transactions develops. Occasionally there is a lull in transaction activity and some moochers make it into the chain
Max block size is 1MB that is ~2,500 average sized tx or 4 tps (7 tps would require smaller as in size not value txs). However miners aren't mining blocks anywhere close to the 1MB limit.
Average block size is 100KB to 200KB (~250 to 500 txs) or a mere 0.4 to 0.8 tps. Miners are simply choosing to mine smaller blocks.
Still in general you are right. Most miners devote a small amount of space for free transactions (default is 27KB or ~60 tx per block). Anything beyond that waits for the next block. If there are 3000 free tx ahead of you and only 60 make it into a block you are looking for 50 or so blocks before inclusion. Free tx are ranked by priority so if you have a lower priority you can simply keep falling int the queue as newer higher priority tx are included in a block.