I will try to give you a very simple explanation of it with an example so that you understand
Now let's say,
Country - XYZ issue 5% Coupon, 10 Year Bonds on Jan 5th 2020
worth 100 Million, where each bond is of $100 each.
So basically a 1 Million Bonds of $100 each.
Also, Where interest is paid annually, and the Bond is redeemable at Par, i.e $100
The bonds get subscribed fully, and now there are holders of that Bond and the XYZ Country gets $100 Million
The Bonds starts trading at $100.
Now lets say there is more demand for the bond due to certain market conditions and the bond goes to $120 on Jan 6th, 2024.
Now there are 6 more payments of $5 Dollar on each bond left.
So if a person holds 1 Bond till maturity they can at least expect to get $30 back provided that Nation XYZ doesn't default midway.
Now, Although there are 6 more payments left and the bond price will still probably fluctuate, ( it might up or down ) , But still on Jan 5th 2030, i.e 10 years after the issue, on Maturity of the bond you will get back 100 Dollars and not $120.
I think in your question you didn't factor in that.
So in your question you said that the 10 Year Gilt was trading at around 144 Pounds with a coupon of $4.75 but the Yield is 0.47 %.
AS IT SHOULD BE.
Because if you invest 144 Pounds today, although you will get 4.75 Pounds every year as your interest payment, Still upon maturity you will probably get back 100 Pounds and not 144 9 considering the Bond was issued at 100 Pounds and redeemable at par )
So you're directly losing 44 Pounds because of that. ( besides gaining back the interest payments made every year )
So eventually the return on investment will be lower than what you calcualted.
I think by now you would have understood why the yield is much lower than 3.29 %
Hope my answer was of help to you.