Basically, the memory is pulled from proc cache - so not sure if it would be consistently at 128KB - but it does make sense that it is on an even 2K boundary as ASE memory is 2KB allocations. AFAIK, this is not configurable (lecache used from proc cache).
You also didn't show the times for the inserts. I suspect if proc cache is healthy and ELC functioning, the inserts into @var table when below 1000 rows are much faster than the inserts into #temp. Both could have negative impacts due to concurrency on their performance - e.g. inserts into #temp are logged and log contention could slow them down - especially if inserts > session tempdb log cache size......and @var may need more proc pages than are available in ELC and then we have to grab proccache mgr spinlock......