As far as I know there is an upper bound of a block, which is one megabyte, is there a lower bound?
Yes.
To be valid, a block MUST have an 80 byte block header and a generation transaction.
I'm not certain about the minimum size of the generation transaction, but I think it's about 22 bytes or so? That would make the minimum block size about 102 bytes.
If you wanted to include a transaction of your own in that block, you'd need to add in the size of your transaction as well.
Imagine you make a double spend and then you try to propagate a block that contains only your second transaction. If so it would be much smaller, ipso facto easier to propagate around the network and get validated by nodes, isn't that right?
Slightly, but you'd still have to actually mine the block which will take much longer than the propagation time (depending on your hash power).