Each input starts counting for stake (earning weight) 24 hours after its creation. Block reward is 1/730 of the CoinDays redeemed – that includes the first 24 hours. Each input that earns reward within the first 11 days after its creation is split at output (including block reward) in 2 new inputs of equal size. There is a possibility to auto-merge inputs at reward, but this has been observed only for very small inputs. All inputs that get reward are rewarded for the full coin-age – irrespective of how long the wallet has been offline. There is no maximal coin age to get reward (AFAIK).
There seems to be an inbuild bias towards slowing down reward – frequently smaller inputs that get less reward, or relatively young inputs that can still be split, are rewarded earlier than those within the same wallet that would get more reward. This was probably designed that way to create a sufficient supply of staking nodes and keep the network weight high.
Some of the best performers among stakers seem to have only a small number of inputs and keep their wallet offline for some time (>11 days). This tendency seems to have increased recently, so that the network weight actually declined.(at least for some time) This tactic, of course, runs against the purpose of staking, because it reduces the number of nodes that are actually active.
This is a field where I really see a necessity of some technical improvement: Reduce maximum age for splitting (e.g. <3 days) – introduce auto merging of older inputs (e.g. >9 days) – and exclude inputs that are mostly offline from reward (e.g. all inputs with more than 30 days coin age – a transition period of a few thousand blocks would be required here). A further area of technical improvement is the block time – while the OP states that the target is 288 / day, we rarely get >210, although many inputs are expecting reward. It seems that there is a flaw in the difficulty adjustment formula, which increases fast – but decreases slow, and thus often leads to large distances between blocks – up to one hour. Here I’d suggest to keep the adjustment for every block, but not calculated from the last block, but from a rolling average (let’s say 12 blocks / one hour back).
the best scenario for a fixed PoS network is to have a high network difficulty created by many inputs.
so yes, the current code does encourage the wallet to split and slow down rewards, but as you say leaving your wallet offline for >11 days gets around this.
adjusting wallet combine/split/age thresholds is relatively easy and only requires compiling new clients.
it's unclear whether that would actually positively effect the network as it might end up reducing difficulty and make it more susceptible to attack.
reducing max stake age is a hard fork, as is changing difficulty adjustment
also a hard fork is changing to a fixed reward to encourage constant staking with many inputs
i quite like fixed reward, this also has the effect of reducing effective inflation rate over time.
ie current inflation rate is 50% which equates to ~10783349272/year, (although the real effect of 50% pos is not actually 50%)
converting that to a constant reward of 100,000 coins/block gives roughly the same apparent inflation rate, for now, but as the coin supply increases the % value of that reward decreases
difficulty adjustment will never be perfect :/ there are many attempts at getting the perfect system,
but especially when the network is prone to large fluctuations in stake weight (wallets offline for much time) it will continue to vary widely.
.