One block for all is more attractive from the organizational point of view. However, it might cost you more if the block is much larger than what you actually need (I'm sure you know better than me about that). However, there is nothing wrong with having more separate /30 /29 blocks. But if the small blocks were non contiguous, the ISP's routers might just have longer routing tables, which is not very efficient.
Any way, You can do almost any thing with a single /30 public IP. except for having two or more public servers opening the same public port (say 2 web servers for example both on port 80 open for outside)